(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023149733
(43)【公開日】2023-10-13
(54)【発明の名称】ホイールローダ
(51)【国際特許分類】
E02F 9/20 20060101AFI20231005BHJP
【FI】
E02F9/20 M
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2022058470
(22)【出願日】2022-03-31
(71)【出願人】
【識別番号】000005522
【氏名又は名称】日立建機株式会社
(74)【代理人】
【識別番号】110001829
【氏名又は名称】弁理士法人開知
(72)【発明者】
【氏名】塚田 庸子
(72)【発明者】
【氏名】森木 秀一
(72)【発明者】
【氏名】関根 和也
【テーマコード(参考)】
2D003
【Fターム(参考)】
2D003BA03
2D003BA04
2D003BB07
2D003DA04
2D003DB03
2D003FA02
(57)【要約】
【課題】走行経路に沿って安定した自動走行が可能なホイールローダを提供する。
【解決手段】ホイールローダは、フロントボディとリアボディとが屈曲可能に連結された車体と、フロントボディに回動可能に設けられたリフトアームと、リフトアームに回動可能に設けられたバケットと、車体を走行させる走行装置と、車体を屈曲させることにより屈曲角を変更し操舵させるステアリング装置と、掘削位置と積込位置とに基づき走行経路を生成し、走行経路に沿って車体が走行するように、走行装置及びステアリング装置を制御する制御装置とを備える。制御装置は、走行経路に基づき、走行経路上における目標屈曲角と目標リフトアーム高さと目標車速とを演算し、目標屈曲角と目標リフトアーム高さとに基づき、ホイールローダの重心位置を演算し、目標屈曲角と目標車速と重心位置とに基づき、車体の走行安定性を判定し走行装置及びステアリング装置を制御する。
【選択図】
図10
【特許請求の範囲】
【請求項1】
前輪を有するフロントボディと後輪を有するリアボディとが屈曲可能に連結された車体と、
前記フロントボディに回動可能に設けられたリフトアームと、
前記リフトアームに回動可能に設けられたバケットと、
前記車体を走行させる走行装置と、
前記車体を屈曲させることにより屈曲角を変更し操舵させるステアリング装置と、
作業現場における掘削位置と積込位置とに基づき走行経路を生成し、生成された前記走行経路に沿って前記車体が走行するように、前記走行装置及び前記ステアリング装置を制御する制御装置と、を備えたホイールローダにおいて、
前記制御装置は、
生成された前記走行経路に基づき、前記走行経路上における目標屈曲角と、目標リフトアーム高さと、目標車速とを演算し、
演算された前記目標屈曲角と、演算された前記目標リフトアーム高さとに基づき、前記ホイールローダの重心位置を演算し、
演算された前記目標屈曲角と、演算された前記目標車速と、演算された前記重心位置とに基づき、前記車体の走行安定性を判定し前記走行装置及び前記ステアリング装置を制御する
ことを特徴とするホイールローダ。
【請求項2】
請求項1に記載のホイールローダにおいて、
前記バケットに積載された積荷の荷重を検出する積荷荷重検出装置を備え、
前記制御装置は、
演算された前記目標屈曲角に基づき、支持多角形を演算し、
前記積荷荷重検出装置によって検出された前記積荷の荷重と、演算された前記目標リフトアーム高さと、演算された前記目標屈曲角と、に基づき、前記重心位置を演算し、
演算された前記重心位置と、演算された前記目標車速とに基づき、前記重心位置に作用する力のベクトルを演算し、
演算された前記力のベクトルと走行面とが交わる点であるZMPを演算し、
演算された前記支持多角形と、演算された前記ZMPとの位置関係に基づき、前記車体の走行安定性を判定する
ことを特徴とするホイールローダ。
【請求項3】
請求項2に記載のホイールローダにおいて、
前記制御装置は、
演算された前記支持多角形の内側に、演算された前記支持多角形よりも小さい安定領域を設定し、
設定された前記安定領域内に演算された前記ZMPがある場合には、前記車体の状態は安定と判定し、設定された前記安定領域内に演算された前記ZMPがない場合には、前記車体の状態は不安定と判定する
ことを特徴とするホイールローダ。
【請求項4】
請求項3に記載のホイールローダにおいて、
生成された前記走行経路に沿って走行する前記ホイールローダの実際の車速を検出する車速センサを備え、
前記制御装置は、
生成された前記走行経路上の位置と、その位置における前記車速センサにより検出された実際の車速と、演算された前記目標車速との差異を表すデータと、を対応付けて記憶装置に記憶し、
前記記憶装置に記憶された前記実際の車速と、演算された前記目標車速との差異を表すデータを加味して、前記ZMPを演算する
ことを特徴とするホイールローダ。
【請求項5】
請求項3に記載のホイールローダにおいて、
前記車体の周囲の物体を検出する物体検出装置を備え、
前記制御装置は、
前記物体検出装置の検出結果に基づき、作業現場における目標掘削位置と目標積込位置とを設定し、
設定された前記目標掘削位置と、設定された前記目標積込位置とに基づき、目標切り返し位置を設定し、
設定された前記目標切り返し位置から設定された前記目標掘削位置までの掘削作業用の前記走行経路と、設定された前記目標掘削位置から設定された前記目標切り返し位置までの第1戻り用の前記走行経路と、設定された前記目標切り返し位置から設定された前記目標積込位置までの積込作業用の前記走行経路と、設定された前記目標積込位置から設定された前記目標切り返し位置までの第2戻り用の前記走行経路と、を生成する
ことを特徴とするホイールローダ。
【請求項6】
請求項5に記載のホイールローダにおいて、
前記制御装置は、
前記積込作業用の走行経路において、設定された前記目標積込位置に近づくほど、前記安定領域を小さく設定する
ことを特徴とするホイールローダ。
【請求項7】
請求項1に記載のホイールローダにおいて、
前記制御装置は、
生成された前記走行経路上の複数の位置と、前記複数の位置における前記目標屈曲角と前記目標リフトアーム高さと前記目標車速とを対応付けた走行計画情報を記憶装置に記憶し、
前記車体の状態が不安定と判定された場合には、前記目標車速及び前記目標リフトアーム高さの少なくとも一方の修正を行い、
前記車体の状態が安定と判定された場合には、前記目標車速及び前記目標リフトアーム高さの修正を行わず、
前記記憶装置に記憶された前記走行計画情報に基づき、前記ステアリング装置と前記走行装置と前記リフトアームとを制御する
ことを特徴とするホイールローダ。
【請求項8】
請求項7に記載のホイールローダにおいて、
前記制御装置は、前記車体の状態が不安定と判定された場合には、前記目標車速及び前記目標リフトアーム高さの少なくとも一方を低くする修正を行う
ことを特徴とするホイールローダ。
【請求項9】
請求項7に記載のホイールローダにおいて、
前記制御装置は、生成された前記走行経路上の同じ位置における前記目標車速及び前記目標リフトアーム高さの少なくとも一方の修正を所定回数行い、前記車体の状態が安定と判定されなかった場合には、前記走行経路の修正を行う
ことを特徴とするホイールローダ。
【請求項10】
請求項7に記載のホイールローダにおいて、
前記制御装置は、前記車体の状態が不安定と判定された場合に、前記目標車速の修正を行い、かつ、前記目標リフトアーム高さの修正を行わないリフトアーム優先モードと、前記車体の状態が不安定と判定された場合に、前記目標リフトアーム高さの修正を行い、かつ、前記目標車速の修正を行わない車速優先モードと、前記車体の状態が不安定と判定された場合に、前記目標車速及び前記目標リフトアーム高さの双方の修正を行う通常モードとをそれぞれ備え、前記リフトアーム優先モードと前記車速優先モードと前記通常モードの中から、オペレータの操作に応じて一つのモードが設定されるように構成されている
ことを特徴とするホイールローダ。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、走行経路を生成し、走行経路に沿って自動で走行が可能なホイールローダに関する。
【背景技術】
【0002】
ホイールローダで掘削作業及び積込作業を行う際、作業の進行により掘削位置及び積込位置が変化する。したがって、ホイールローダの自動運転によって掘削作業及び積込作業を行う場合、ホイールローダは、掘削位置及び積込位置の変化に応じて自動で走行経路を生成する必要がある。
【0003】
特許文献1には、ダンプトラックなどの無人車両の走行経路を自動で生成する方法として、車両が走行可能な最低の制約条件を満たしつつ、更に、タイヤや車体への負荷を小さく抑えたり、走行に要する所要時間を短くしたり、低燃費で走行させたりすることができる最適な走行経路を生成することによって、走行に伴うコストを最小に抑えることを解決課題とした走行経路の生成方法が開示されている。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
ホイールローダでは、掘削作業をした後、掘削対象物をダンプトラックなどの運搬車両へ積込む際に、リフトアームを上げながら走行する動作(ライズラン)が行われる。このような動作が行われた際には、ホイールローダは、リフトアームの上げ動作によって重心位置が高くなり、さらに、運搬車両の手前で減速することになるため、車体が不安定になる。特許文献1では、無人車両の走行時の安定性は考慮されておらず、生成された走行経路に沿ってホイールローダを走行させようとすると、安定した自動走行ができないおそれがある。
【0006】
本発明は、生成された走行経路に沿って安定した自動走行が可能なホイールローダを提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明の一態様によるホイールローダは、前輪を有するフロントボディと後輪を有するリアボディとが屈曲可能に連結された車体と、前記フロントボディに回動可能に設けられたリフトアームと、前記リフトアームに回動可能に設けられたバケットと、前記車体を走行させる走行装置と、前記車体を屈曲させることにより屈曲角を変更し操舵させるステアリング装置と、作業現場における掘削位置と積込位置とに基づき走行経路を生成し、生成された前記走行経路に沿って前記車体が走行するように、前記走行装置及び前記ステアリング装置を制御する制御装置と、を備える。前記制御装置は、生成された前記走行経路に基づき、前記走行経路上における目標屈曲角と、目標リフトアーム高さと、目標車速とを演算し、演算された前記目標屈曲角と、演算された前記目標リフトアーム高さとに基づき、前記ホイールローダの重心位置を演算し、演算された前記目標屈曲角と、演算された前記目標車速と、演算された前記重心位置とに基づき、前記車体の走行安定性を判定し前記走行装置及び前記ステアリング装置を制御する。
【発明の効果】
【0008】
本発明によれば、ホイールローダを、生成された走行経路に沿って安定して自動走行させることができる。
【図面の簡単な説明】
【0009】
【
図1】
図1は、本発明の実施形態に係る自動運転可能なホイールローダの側面図である。
【
図2】
図2は、ホイールローダのシステム構成図である。
【
図3】
図3は、ホイールローダにより行われる作業の一例について示す図である。
【
図4】
図4は、コントローラのハードウェア構成を示す図である。
【
図5】
図5は、走行計画コントローラの機能ブロック図である。
【
図6】
図6は、安定走行計画部の機能の詳細について説明する図である。
【
図7】
図7は、ホイールローダを上方から見た模式図であり、支持多角形SP及びZMPを示す。
【
図8】
図8は、ホイールローダを側方から見た模式図であり、支持多角形SP及びZMPを示す。
【
図9】
図9は、減速度、リフトアーム高さ、及び車体の屈曲角と、走行安定性との関係について示す図である。
【
図10】
図10は、本発明の実施形態に係る安定走行計画部により実行される安定走行計画処理の流れの一例について示すフローチャートである。
【発明を実施するための形態】
【0010】
以下、図面を参照して、本発明の実施形態に係るホイールローダについて説明する。
【0011】
図1は、本発明の実施形態に係る自動運転可能なホイールローダ1の側面図である。ホイールローダ1は、アーティキュレート式の車体16と、車体16の前方に取り付けられた多関節型の作業装置17と、を備える。車体16は、左右に前輪4a(車輪4)を装着したフロントボディ11と、左右に後輪4b(車輪4)を装着したリアボディ12と、を備える。フロントボディ11とリアボディ12は、センターピン13により左右方向に屈曲可能に連結されている。
【0012】
ホイールローダ1は、車体16を屈曲させることにより屈曲角を変更し操舵させるステアリング装置19を備えている。ステアリング装置19は、センターピン13の左右両側に設けられ、フロントボディ11とリアボディ12とを連結する左右一対の油圧シリンダ(以下、ステアリングシリンダとも記す)14を有している。リアボディ12は、運転室5及びエンジン室6を有している。
【0013】
作業装置17は、フロントボディ11に取り付けられる。作業装置17は、フロントボディ11に上下方向に回動可能に取り付けられるリフトアーム2と、リフトアーム2の先端部に上下方向に回動可能に取り付けられるバケット3と、リフトアーム2を駆動する油圧シリンダ(以下、アームシリンダとも記す)7と、バケット3を駆動する油圧シリンダ(以下、バケットシリンダとも記す)8と、を備えている。なお、リフトアーム2とアームシリンダ7はフロントボディ11の左右に1つずつ設けられる。バケット3は、ベルクランク9及びバケットリンク10を介してバケットシリンダ8の伸縮により回動し、これによってバケット3の向きが上下する。
【0014】
アームシリンダ7は、ボトム室に圧油が供給されると伸長してリフトアーム2を上方向に回動(リフト上げ)させ、ロッド室に圧油が供給されると縮退してリフトアーム2を下方向に回動(リフト下げ)させる。バケットシリンダ8は、ボトム室に圧油が供給されると伸長してバケット3を上方向に回動(チルト)させ、ロッド室に圧油が供給されると縮退してバケット3を下方向に回動(ダンプ)させる。
【0015】
ホイールローダ1は、左右一対のステアリングシリンダ14の伸縮によりフロントボディ11とリアボディ12が相対的に回動することで操舵される。右側のステアリングシリンダ14が縮退するとともに左側のステアリングシリンダ14が伸長すると、車体16は右側に屈曲する。左側のステアリングシリンダ14が縮退するとともに右側のステアリングシリンダ14が伸長すると、車体16は左側に屈曲する。なお、本明細書において、屈曲角とは、センターピン13回りの回転角に相当する。屈曲角は、屈曲していない状態、すなわちホイールローダ1が直進する姿勢である場合に0(ゼロ)°である。屈曲角は、車体16が右側に屈曲している姿勢では正の値をとり、車体16が左側に屈曲している姿勢では負の値をとるものとする。
【0016】
<システム構成>
図2は、ホイールローダ1のシステム構成図である。
図2に示すように、ホイールローダ1は、車体16を走行させる走行装置28と、掘削作業を行う作業装置17と、車体16を操舵させるステアリング装置19と、車体16を制動させたり、停止した車体16が動作することを抑制したりするブレーキ装置18と、これらの装置の駆動源となるエンジン40と、ホイールローダ(以下、車両とも記す)1の各部を制御する制御装置100と、エンジン40に機械的に接続される油圧ポンプ60A,60B,60Cと、を備える。
【0017】
作業装置17は、油圧ポンプ60Aから吐出される作動油によって駆動され、ブレーキ装置18は、油圧ポンプ60Bから吐出される作動油によって駆動され、ステアリング装置19は、油圧ポンプ60Cから吐出される作動油によって駆動される。
【0018】
ホイールローダ1は、作業装置17の動作を制御するフロント制御部61と、ブレーキ装置18の動作を制御するブレーキ制御部62と、ステアリング装置19の動作を制御するステアリング制御部63と、を備える。
【0019】
作業装置17及び走行装置28は、エンジン40の動力によって、互いに独立して駆動される。エンジン40は、例えば、ディーゼルエンジン等の内燃機関により構成される。ホイールローダ1は、エンジン40の動作を制御するエンジン制御部65を備えている。エンジン制御部65は、エンジン回転速度センサにより検出される実際の回転速度を、制御装置100によって演算された目標回転速度に近づけるように、燃料噴射量を制御する。
【0020】
アームシリンダ7及びバケットシリンダ8は、エンジン40が出力するトルクによって回転する油圧ポンプ60Aから吐出される作動油(圧油)によって伸縮動作される。
【0021】
走行装置28は、車輪4と、エンジン40からの動力を車輪4に伝達する動力伝達装置と、を有する。動力伝達装置は、トルクコンバータ51、トランスミッション52、プロペラシャフト53、デファレンシャル装置54、アクスル55等を含んで構成される。
【0022】
エンジン40の出力軸にはトルクコンバータ51の入力軸が連結され、トルクコンバータ51の出力軸はトランスミッション52に連結されている。トルクコンバータ51は周知のインペラ、タービン、ステータからなる流体クラッチであり、エンジン40の回転はトルクコンバータ51を介してトランスミッション52に伝達される。トランスミッション52は、その速度段を1速~5速に切り換えるクラッチを有し、トルクコンバータ51の出力軸の回転はトランスミッション52で変速される。変速後の回転は、プロペラシャフト53、デファレンシャル装置54、アクスル55を介して車輪4に伝達されて、ホイールローダ1が走行する。
【0023】
ホイールローダ1は、トランスミッション52の動作を制御するトランスミッション制御部64を備えている。トランスミッション制御部64は、トランスミッション52の1速~5速の各速度段に対応した電磁弁を有する。トランスミッション制御部64は、制御装置100からの制御信号に応じて電磁弁が動作することにより、トランスミッション52を制御する。
【0024】
油圧ポンプ60A,60B,60Cは、エンジン40と機械的に接続されている。油圧ポンプ60A,60B,60Cは、エンジン40が出力するトルクによって駆動されて作動油を吐出する。
【0025】
油圧ポンプ60Aからアームシリンダ7及びバケットシリンダ8に供給される作動油は、フロント制御部61によって、その圧力、流量及び流通方向が制御される。これにより、作業装置17による掘削動作、積込動作が行われる。油圧ポンプ60Bからブレーキシリンダ18a及び駐車ブレーキシリンダ18bに供給される作動油は、ブレーキ制御部62によって、その圧力、流量及び流通方向が制御される。これにより、ブレーキ装置18による車体16の制動動作、停止保持動作が行われる。油圧ポンプ60Cから左右一対のステアリングシリンダ14に供給される作動油は、ステアリング制御部63によって、その圧力、流量及び流通方向が制御される。これにより、ステアリング装置19による車体16の操舵が行われる。
【0026】
図1に示すように、運転室5の上部には、車体16の周囲を撮影する複数の撮影装置15が設置されている。撮影装置15は、例えば、耐久性、耐候性に優れたCCD、CMOSなどの撮像素子と広角レンズを備えた広角ビデオカメラである。撮影装置15により撮影された映像のデータは、制御装置100に出力される。
【0027】
図2に示すように、ホイールローダ1は、車体16とリフトアーム2とを連結する連結軸に設けられるアーム角度センサ41と、リフトアーム2とバケット3とを連結する連結軸に設けられるバケット角度センサ42と、を備える。アーム角度センサ41は、フロントボディ11に対するリフトアーム2の回動角度(アーム角度)を検出し、検出結果を表す信号を制御装置100に出力する。バケット角度センサ42は、リフトアーム2に対するバケット3の回動角度(バケット角度)を検出し、検出結果を表す信号を制御装置100に出力する。アーム角度及びバケット角度は、作業装置17の姿勢を表す物理量である。このため、アーム角度センサ41及びバケット角度センサ42は、作業装置17の姿勢を検出する姿勢センサとして機能する。なお、姿勢センサとして、アーム角度センサ41に代えて、アームシリンダ7のストローク量を検出するストロークセンサを設けてもよい。同様に、姿勢センサとして、バケット角度センサ42に代えて、バケットシリンダ8のストローク量を検出するストロークセンサを設けてもよい。
【0028】
ホイールローダ1は、複数の圧力センサを備えている。複数の圧力センサには、アームシリンダ7において、荷重を支える側の油室であるボトム室の圧力を検出し、検出結果を表す信号を制御装置100に出力する圧力センサ43が含まれる。
【0029】
ホイールローダ1は、屈曲角を検出する屈曲角センサ44を備えている。屈曲角センサ44は、センターピン13に設けられ、屈曲角を検出し、検出結果を表す信号を制御装置100に出力する。屈曲角は、車体16の姿勢を表す物理量である。つまり、屈曲角センサ44は、車体16の姿勢を検出する姿勢センサとして機能する。なお、車体16の姿勢を検出する姿勢センサとして、屈曲角センサ44に代えて、ステアリングシリンダ14のストローク量を検出するストロークセンサを設けてもよい。
【0030】
ホイールローダ1は、自車両の走行速度(以下、車速とも記す)を検出する車速センサ45を備えている。車速センサ45は、制御装置100に接続されている。車速センサ45は、車速を検出し、検出結果を表す信号を制御装置100に出力する。
【0031】
制御装置100は、作業現場における掘削位置と積込位置とに基づき走行経路を生成し、生成された走行経路に沿って車体16が走行するように、走行装置28及びステアリング装置19を制御する。これにより、ホイールローダ1が、掘削位置及び積込位置まで自動的に走行し、掘削作業及び積込作業を行う。
【0032】
図3を参照して、ホイールローダ1により行われる作業の一例について説明する。
図3に示すように、ホイールローダ1は、(第1動作)掘削対象物である地山91に向かって前進し、(第2動作)地山91にバケット3を突入させ、バケット3及びリフトアーム2を動作させることにより、地山91を掘削する掘削作業を行う。掘削作業の完了後、ホイールローダ1は、(第3動作)所定の位置まで後進して停止する。その後、ホイールローダ1は、(第4動作)リフトアーム2を上昇させながら、ダンプトラック92に向かって前進し(ライズラン)、ダンプトラック92の手前の積込位置で停止する。そして、(第5動作)バケット3内の積荷(掘削物)をダンプトラック92の荷台に放土する積込作業を行う。積込作業が完了した後、ホイールローダ1は、(第6動作)所定の位置まで後進する。ホイールローダ1は以上の説明のようにV字軌跡を描きながら(第1動作)~(第6動作)の一連の動作を繰り返し行う。なお、本明細書では、(第1動作)~(第6動作)の一連の動作をローダ作業とも記す。
【0033】
第4動作(ライズラン)では、リフトアーム2の上げ動作によってホイールローダ1の重心位置が高くなる。また、ホイールローダ1は、ダンプトラック92の手前の減速領域DAで減速することになる。このため、減速領域DAにおいて、ホイールローダ1は、特に車体16の状態が不安定になりやすい。本実施形態では、自動運転が行われる前に、走行経路に沿って、ホイールローダ1が安定して走行可能かどうかが判断される。ホイールローダ1の自動運転の際に用いられる走行経路の生成処理、自動運転開始前に行われる走行経路上での走行安定性の判定処理、及び自動運転の制御の詳細については、後述する。
【0034】
図2に示すように、ホイールローダ1は、運転室5内に設けられる入力装置38と表示装置39と通信装置46とを備える。通信装置46は、通信回線90の一部を構成する無線基地局と無線通信可能な無線通信装置であって、例えば2.1GHz帯等の帯域を感受帯域とする通信アンテナを含む通信インタフェースを有する。通信装置46は、通信回線90を介して、遠隔操作装置70と情報の授受を行う。通信回線90は、携帯電話事業者等が展開する携帯電話通信網(移動通信網)、インターネット等の広域ネットワークである。
【0035】
表示装置39は、例えば、液晶ディスプレイ装置あるいは有機ELディスプレイ装置である。表示装置39は、情報を画像で出力する出力装置である。入力装置38は、例えば、複数のスイッチを有するスイッチ装置や、表示装置39の表示画面に重ねて設けられるタッチセンサ装置である。入力装置38は、オペレータにより操作され、操作に応じた指示を制御装置100に入力する。入力装置38から自動運転を開始する指示が制御装置100に入力されると、制御装置100は、ホイールローダ1の自動運転を開始するための制御を実行する。なお、制御装置100は、後述する遠隔操作装置70から送信された自動運転開始指令を取得した場合にも同様に、ホイールローダ1の自動運転を開始するための制御を実行する。
【0036】
本実施形態に係る制御装置100は、複数のコントローラC1,C2,C3,C4を有している。なお、制御装置100を構成する複数のコントローラC1,C2,C3,C4及び、後述する遠隔操作装置70のコントローラC5は、同様の構成であるため、以下では、コントローラCと総称することもある。
【0037】
遠隔操作装置70は、ホイールローダ1の制御装置100と通信回線90を介して情報の授受を行う。遠隔操作装置70は、遠隔操作コントローラC5と、ホイールローダ1と通信を行うための通信装置71と、オペレータの指示を遠隔操作コントローラC5に入力する入力装置72と、遠隔操作コントローラC5からの制御信号に基づき、表示画面に表示画像を表示する表示装置73と、を備えている。
【0038】
表示装置73は、例えば、液晶ディスプレイ装置あるいは有機ELディスプレイ装置である。表示装置73は、情報を画像で出力する出力装置である。入力装置72は、例えば、キーボードやマウス、表示装置73の表示画面に重ねて設けられるタッチセンサ装置である。
【0039】
遠隔操作コントローラC5は、ホイールローダ1から送信された車体データ(画像データを含む)を表示画面に表示させる。入力装置72は、オペレータにより操作され、操作に応じた指示を遠隔操作コントローラC5に入力する。入力装置72から自動運転を開始する指示が遠隔操作コントローラC5に入力されると、遠隔操作コントローラC5は、通信装置71を介して、ホイールローダ1に自動運転開始指令を送信する。
【0040】
図4は、コントローラCのハードウェア構成を示す図である。
図4に示すように、コントローラCは、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、DSP(Digital Signal Processor)等の処理装置101、ROM(Read Only Memory)、フラッシュメモリ、ハードディスクドライブ等の不揮発性メモリ102、所謂RAM(Random Access Memory)と呼ばれる揮発性メモリ103、入力インタフェース104、出力インタフェース105、及び、その他の周辺回路を備えたコンピュータで構成される。なお、コントローラCは、1つのコンピュータで構成してもよいし、複数のコンピュータで構成してもよい。また、処理装置101としては、ASIC(application specific integrated circuit)、FPGA(Field Programmable Gate Array)などを採用してもよい。
【0041】
不揮発性メモリ102には、各種演算が実行可能なプログラムが格納されている。すなわち、不揮発性メモリ102は、本実施形態の機能を実現するプログラムを読み取り可能な記憶装置(記憶媒体)である。処理装置101は、不揮発性メモリ102に記憶されたプログラムを揮発性メモリ103に展開して演算処理を実行する演算処理装置である。処理装置101は、プログラムに従って入力インタフェース104、不揮発性メモリ102及び揮発性メモリ103から取り入れた信号に対して所定の演算処理を行う。
【0042】
入力インタフェース104は、撮影装置、センサ、他のコントローラ等の各種装置から入力された信号を処理装置101で演算可能なように変換する。また、出力インタフェース105は、処理装置101での演算結果に応じた出力用の信号を生成し、その信号を油圧機器を制御する電磁弁等の各種装置に出力する。
【0043】
複数の撮影装置15は位置設定コントローラC2に接続され、アーム角度センサ41、バケット角度センサ42、圧力センサ43、屈曲角センサ44、及び、車速センサ45は、車両制御コントローラC4に接続される。複数のコントローラCは、CAN(Controller Area Network)と呼ばれる車載ネットワーク106を介して相互に通信可能に接続されている。なお、車載ネットワーク106は、CAN以外の通信規格、例えば、Ethernet(登録商標)を用いてもよい。これにより、複数のコントローラC間で、センサの検出結果、コントローラCの演算結果等の情報(データ)の授受が行われる。
【0044】
複数のコントローラCには、撮影装置15により撮影された映像のデータに基づき、ホイールローダ1の移動の目標位置を設定する位置設定コントローラC2と、角度センサ41,42及び圧力センサ43の検出結果に基づきバケット3に積載された積荷(掘削物)の荷重(以下、バケット内荷重とも記す)を演算する荷重演算コントローラC3と、位置設定コントローラC2により設定された目標位置及び荷重演算コントローラC3により演算されたバケット内荷重に基づき、ホイールローダ1の走行計画情報を生成する走行計画コントローラC1と、走行計画コントローラC1により生成された走行計画情報に基づき、走行装置28、ステアリング装置19、及び、作業装置17を制御する車両制御コントローラC4と、が含まれる。
【0045】
位置設定コントローラC2は、撮影装置15により撮影された映像のデータに基づき、
図3に示す地山91及びダンプトラック92を検出する。つまり、撮影装置15と位置設定コントローラC2は、車体16の周囲の物体を検出する物体検出装置56を構成する。なお、地山91及びダンプトラック92の検出方法には、例えば、ニューラルネットワークを用いた周知の物体検出方法を採用することができる。
【0046】
位置設定コントローラC2は、検出された地山91と地面の境界線B1に基づき、作業現場において掘削作業を行う際の車体16の目標位置(以下、目標掘削位置とも記す)P1を設定する。位置設定コントローラC2は、目標掘削位置P1において、地山91と地面の境界線B1に対して直交する方向を車体16の目標方位として、その目標方位を表す目標方位角A1を設定する。
【0047】
位置設定コントローラC2は、検出されたダンプトラック92と地面の境界線B2に基づき、作業現場において積込作業を行う際の車体16の目標位置(以下、目標積込位置とも記す)P2を設定する。位置設定コントローラC2は、目標積込位置P2において、ダンプトラック92と地面の境界線B2に対して直交する方向を車体16の目標方位として、その目標方位を表す目標方位角A2を設定する。
【0048】
目標方位角A1,A2は、基準方位と車体16の進行方向とのなす角度で表される。目標方位角A1,A2は、基準方位を0°として、基準方位に対して図示時計回りの方向に正の値をとり、基準方位に対して図示反時計回りの方向に負の値をとることとする。つまり、目標方位角A1,A2は、-180°から+180°の範囲で設定される。なお、目標方位角A1,A2は、基準方位を0°として、図示時計回りの方向に0°から360°までの範囲で設定されることとしてもよい。
【0049】
目標位置は、例えば、グローバル座標系の座標で表される。なお、目標位置は、作業現場の所定の位置を原点とする現場座標系の座標で表されることとしてもよい。基準方位は、例えば、真北に設定される。グローバル座標系と現場座標系は、座標変換が可能である。なお、位置設定コントローラC2は、撮影装置15により車体16の周囲を撮影し、走行経路R1~R4を生成する際の自車両の現在位置を原点、自車両の前方向を基準方位とした車両基準座標系を用いて、目標位置を特定してもよい。
【0050】
ホイールローダ1は、自車両の位置を検出し、検出結果を表す信号を位置設定コントローラC2に出力する位置検出装置47を備えている。位置検出装置47は、例えば、複数のGNSS(Global Navigation Satellite System:全地球衛星測位システム)用のアンテナと、GNSSアンテナで受信された複数の測位衛星からの衛星信号(GNSS電波)に基づき、グローバル座標系におけるホイールローダ1の位置及び方位を演算する測位演算装置と、を有する。
【0051】
なお、位置検出装置47は、これに限らず、車輪4の回転速度を検出する車輪速センサ及びジャイロセンサを備えたものであってもよい。測位演算装置は、車輪速センサの検出結果に基づいてホイールローダ1の移動距離を演算し、ジャイロセンサの検出結果に基づいてホイールローダ1の移動方向を演算する。
【0052】
図4に示す荷重演算コントローラC3の不揮発性メモリ102には、アーム角度、バケット角度及びアームシリンダ7のボトム室の圧力からバケット内荷重を演算するのに用いられる数式、あるいはデータテーブルが記憶されている。荷重演算コントローラC3は、不揮発性メモリ102に記憶されている数式、あるいはデータテーブルと、アーム角度センサ41、バケット角度センサ42、及び、圧力センサ43の検出結果に基づき、バケット内荷重を演算する。このように、荷重演算コントローラC3、アーム角度センサ41、バケット角度センサ42、及び、圧力センサ43は、バケット3に積載された積荷の荷重(バケット内荷重)を検出する積荷荷重検出装置50を構成する。なお、バケット内荷重の検出方法は、これに限定されない。積荷荷重検出装置50は、バケット3に設けられる荷重センサと、荷重センサの検出結果に基づきバケット内荷重を演算するコントローラにより構成してもよい。
【0053】
走行計画コントローラC1は、目標掘削位置P1、目標掘削位置P1における目標方位角A1、目標積込位置P2、及び、目標積込位置P2における目標方位角A2に基づき、走行経路Rと走行経路R上での屈曲角、車速、リフトアーム2の高さの目標値を演算し、その演算結果に基づき、車両の加速、減速、操舵、リフト上げ等の動作指令を生成する。走行計画コントローラC1の機能の詳細については後述する。
【0054】
車両制御コントローラC4は、走行計画コントローラC1により生成された動作指令に基づき、ホイールローダ1の各部の制御を行う。
【0055】
例えば、
図2に示すように、車両制御コントローラC4は、動作指令に基づきフロント制御部61を制御することにより、以下のようにして作業装置17の動作を制御する。フロント制御部61は、油圧ポンプ60Aからアームシリンダ7への作動油の流量及び流れの方向を制御するアーム用流量制御弁と、アーム用流量制御弁に指令圧を出力するアーム制御用電磁弁と、油圧ポンプ60Aからバケットシリンダ8への作動油の流量及び流れの方向を制御するバケット用流量制御弁と、バケット用流量制御弁に指令圧を出力するバケット制御用電磁弁と、を有する。
【0056】
車両制御コントローラC4は、走行計画コントローラC1により生成された動作指令に基づき、アーム制御用電磁弁に制御信号を出力し、アーム制御用電磁弁によって指令圧を生成する。アーム制御用電磁弁によって生成された指令圧は、アーム用流量制御弁の受圧室に導かれる。アーム用流量制御弁は、受圧室に作用する指令圧に応じて動作する。アーム用流量制御弁は、受圧室に作用する指令圧に応じて、油圧ポンプ60Aからアームシリンダ7に供給される作動油の流量及び流れの方向を制御する。同様に、車両制御コントローラC4は、走行計画コントローラC1により生成された動作指令に基づき、バケット用流量制御弁を制御するためのバケット制御用電磁弁に制御信号を出力する。作業装置17が動作することにより、アーム角度及びバケット角度が変化する。なお、アーム角度が変化することにより、走行面からリフトアーム2の先端部に設けられるバケットピンの中心位置までの高さ(以下、リフトアーム高さとも記す)が変化する。
【0057】
動作指令には、屈曲角の目標値である目標屈曲角に基づいて演算されるステアリング制御指令、車速の目標値である目標車速に基づいて演算される走行制御指令(アクセル指令及びブレーキ指令)、及び、リフトアーム高さの目標値である目標リフトアーム高さに基づいて演算されるアーム制御指令が含まれる。
【0058】
車両制御コントローラC4は、走行計画コントローラC1からの動作指令に含まれるアーム制御指令に基づき、フロント制御部61を制御する。これにより、実際のリフトアーム2の高さが目標リフトアーム高さとなるように、リフトアーム2の動作が制御される。つまり、走行計画コントローラC1及び車両制御コントローラC4は、アーム角度センサ41により検出される実際のアーム角度が、目標リフトアーム高さに相当する目標アーム角度になるように、リフトアーム2を動作させる。
【0059】
また、車両制御コントローラC4は、走行計画コントローラC1からの動作指令に含まれるステアリング制御指令に基づき、ステアリング制御部63を制御する。これにより、実際の屈曲角が目標屈曲角となるように、ステアリング装置19の動作が制御される。つまり、走行計画コントローラC1及び車両制御コントローラC4は、屈曲角センサ44により検出される実際の屈曲角が目標屈曲角になるように、ステアリング装置19を動作させる。
【0060】
さらに、車両制御コントローラC4は、走行計画コントローラC1からの動作指令に含まれる走行制御指令に基づき、エンジン制御部65、トランスミッション制御部64及びブレーキ制御部62を制御する。これにより、実際の車速が目標車速となるように、走行装置28の動作が制御される。つまり、走行計画コントローラC1及び車両制御コントローラC4は、車速センサ45により検出される実際の車速が目標車速になるように、走行装置28を動作させる。
【0061】
なお、本実施形態では、走行計画コントローラC1、位置設定コントローラC2、荷重演算コントローラC3及び車両制御コントローラC4が個別に設けられている例について説明するが、本発明はこれに限定されない。コントローラCの機能の一部または全部をその他のコントローラCが備えていてもよい。また、1つのコントローラCが、上記コントローラC1~C4の機能の全てを備えていてもよい。
【0062】
図5は、走行計画コントローラC1の機能ブロック図である。走行計画コントローラC1は、不揮発性メモリ102に記憶されているプログラムを実行することにより、切り返し位置設定部21、経路生成部22、安定走行計画部23、動作指令部24及びフィードバック部25として機能する。
【0063】
なお、上述したように、ホイールローダ1は、掘削位置と積込位置の間を繰り返し行き来する際、掘削作業又は積込作業の後に、一旦後進してから停止して、前進に切り替えて、目的位置に向かう。以下では、ローダ作業において、後進から前進に切り替える位置を切り返し位置P0(
図3参照)と記す。なお、本実施形態では、掘削作業の後、積込位置へ向かう際の切り返し位置と、積込作業の後、掘削位置へ向かう際の切り返し位置とが同じである場合について説明するが、双方は異なる位置に設定してもよい。
【0064】
図3に示すように、切り返し位置設定部21は、位置設定コントローラC2により設定された目標掘削位置P1及びその位置での目標方位角A1、並びに位置設定コントローラC2により設定された目標積込位置P2及びその位置での目標方位角A2に基づき、目標切り返し位置P0及びその位置での目標方位角A0を設定する。目標切り返し位置P0は、車両の進行方向を後進方向から前進方向へ切り替えて、前進方向への走行を開始する目標位置である。目標切り返し位置P0及び目標方位角A0の設定方法の一例は以下のとおりである。
【0065】
走行計画コントローラC1の不揮発性メモリ102には、掘削位置及び積込位置に応じた切り返し位置を表すデータテーブル(以下、位置テーブルとも記す)が記憶されている。位置テーブルは、オペレータにより操作されるホイールローダ1による実機試験等に基づき定められる。切り返し位置設定部21は、位置テーブルを参照し、目標位置P1,P2に基づき、目標切り返し位置P0を設定する。
【0066】
切り返し位置設定部21は、目標切り返し位置P0から目標掘削位置P1に向かう方位と、目標切り返し位置P0から目標積込位置P2に向かう方位との中間の方位を目標切り返し位置P0の目標方位として決定する。切り返し位置設定部21は、決定した目標方位と基準方位とのなす角度を目標方位角A0として決定する。
【0067】
経路生成部22(
図5参照)は、目標切り返し位置P0から目標掘削位置P1までの掘削作業用の走行経路R1と、目標掘削位置P1から目標切り返し位置P0までの第1戻り用の走行経路R2と、目標切り返し位置P0から目標積込位置P2までの積込作業用の走行経路R3と、目標積込位置P2から目標切り返し位置P0までの第2戻り用の走行経路R4と、を生成する。
【0068】
走行経路R1では、目標切り返し位置P0が走行開始位置、目標掘削位置P1が走行終了位置となる。走行経路R2では、目標掘削位置P1が走行開始位置、目標切り返し位置P0が走行終了位置となる。走行経路R3では、目標切り返し位置P0が走行開始位置、目標積込位置P2が走行終了位置となる。走行経路R4では、目標積込位置P2が走行開始位置、目標切り返し位置P0が走行終了位置となる。なお、説明の便宜上、以下では、走行経路R1~R4を総称して、走行経路Rとも記す。
【0069】
経路生成部22は、走行開始位置における目標方位角、及び、走行終了位置における目標方位角を考慮して、走行開始位置の座標と走行終了位置の座標を緩やかな曲線で結ぶことにより、無理な操舵がなされるようなことがない走行経路Rを生成する。
【0070】
車両の走行安定性は、走行経路Rの曲率が小さいほど高くなる。走行経路Rの経路長が短いほど、エネルギーの消費が抑えられる。しなしながら、走行経路Rの経路長が短いほど、曲率は大きくなりやすい。このため、切り返し位置設定部21及び経路生成部22は、演算した走行経路Rの全長、走行経路Rの曲率の変化量などを用いた評価関数を設定し、機械学習によって評価関数が最小になるような、切り返し位置P0及び走行経路Rを決定することが好ましい。これにより、走行安定性が確保しやすく、かつ、エネルギー消費が抑えられる走行経路Rが生成される。
【0071】
図5に示す安定走行計画部23は、生成された走行経路R上でのホイールローダ1の安定した走行を計画する処理部である。安定走行計画部23は、生成された走行経路Rに基づき、走行経路R上における目標屈曲角と、目標リフトアーム高さと、目標車速と、を演算する。安定走行計画部23は、演算された目標屈曲角と、演算された目標リフトアーム高さとに基づき、ホイールローダ1の重心位置を演算する。安定走行計画部23は、演算された目標屈曲角と、演算された目標車速と、演算された重心位置とに基づき、車体16の走行安定性を判定する。
【0072】
以下、
図6~
図10を参照して、安定走行計画部23の機能の詳細について説明する。
図6は、安定走行計画部23の機能の詳細について説明する図である。
図6に示すように、安定走行計画部23は、屈曲角演算部30、支持多角形演算部33、安定領域設定部34、高さ演算部35、車速演算部37、重心演算部31、ZMP演算部32、及び、走行安定性判定部36として機能する。
【0073】
屈曲角演算部30は、経路生成部22により生成された走行経路Rに沿ってホイールローダ1を走行させるために、走行経路Rの各位置における車体16の目標屈曲角を演算する。走行経路Rには、走行経路R上の位置を表す複数のノードが設定されている。複数のノードは、経路生成部22により設定される。屈曲角演算部30は、各ノードにホイールローダ1が位置しているときの車体16の目標屈曲角を演算する。屈曲角演算部30は、走行経路R上の複数のノードと、複数のノードでの目標屈曲角とを対応付けた走行計画情報を不揮発性メモリ102に記憶する。
【0074】
支持多角形演算部33は、屈曲角演算部30により演算された目標屈曲角に基づき、車両の支持多角形SPを演算する。
図7は、ホイールローダ1を上方から見た模式図であり、支持多角形SPを示す。
図7に示すように、支持多角形SPは、ホイールローダ1の車輪4の接地点Pt1~Pt4を結んだ辺で構成される凸多角形の領域である。
【0075】
具体的には、支持多角形演算部33は、センターピン13に対する各車輪4の相対位置を表す相対位置データと、走行経路Rの各ノードにおける目標屈曲角とに基づき、各ノードにおける左右一対の前輪4aの接地点Pt1,Pt2及び左右一対の後輪4bの接地点Pt3,Pt4の位置座標を演算する。相対位置データは、走行計画コントローラC1の不揮発性メモリ102に記憶されている。支持多角形演算部33は、車体16の接地点Pt1と接地点Pt2とを結んだ線分、接地点Pt2と接地点Pt4とを結んだ線分、接地点Pt4と接地点Pt3とを結んだ線分、及び、接地点Pt3と接地点Pt1とを結んだ線分によって形成される四角形状の支持多角形SPを演算する。支持多角形SPは、車体16が屈曲していない場合には長方形であるが、車体16が屈曲している場合には台形となり、目標屈曲角によって形が変わる。
【0076】
安定領域設定部34は、支持多角形演算部33により演算された支持多角形SPの内側に、支持多角形SPよりも小さい安定領域SAを設定する。安定領域設定部34は、例えば、支持多角形SPを構成する各辺を支持多角形SPの内側に所定距離だけオフセットさせた複数の線によって囲まれる領域を安定領域SAとして設定する。
【0077】
安定領域SAは、地面の凹凸等により走行安定性が低くなることを考慮して設定される。したがって、地面の凹凸が大きい作業現場では、安定領域SAを小さく設定し、地面の凹凸が小さい作業現場では、安定領域SAを大きく設定することが好ましい。
【0078】
図6に示す重心演算部31は、積荷荷重検出装置50により検出されたバケット内荷重と、屈曲角演算部30により演算される各ノードにおける目標屈曲角と、後述する高さ演算部35により演算される各ノードにおける目標リフトアーム高さと、ホイールローダ1の重量データと、に基づき、各ノードにおけるホイールローダ(車両)全体の重心位置Gを演算する。
【0079】
ホイールローダ1の重量データは、走行計画コントローラC1の不揮発性メモリ102に記憶されている。ホイールローダ1の重量データには、フロントボディ11の重量と重心位置、リアボディ12の重量と重心位置、空荷状態のバケット3の重量と重心位置、及び、リフトアーム2の重量と重心位置が含まれる。各部の重心位置は、ホイールローダ1の所定の位置を原点とした車体基準座標系の座標位置によって特定される。
【0080】
ZMP演算部32は、走行経路Rの各ノードにおいて、重心演算部31によって演算される重心位置Gと、経路生成部22により生成される走行経路Rと、後述する車速演算部37により演算される目標車速とに基づき、重心位置Gに作用する力のベクトルを演算する。さらに、ZMP演算部32は、走行経路Rの各ノードにおいて、演算された力のベクトルと走行面とが交わる点であるZMP(Zero Moment Point)を演算する。
【0081】
図7及び
図8を参照して、所定のノードでのZMPの具体的な演算方法について説明する。
図7は、ホイールローダ1を上方から見た模式図であり、支持多角形SP及びZMPを示す。
図8は、ホイールローダ1を側方から見た模式図であり、支持多角形SP及びZMPを示す。
【0082】
図7及び
図8に示すように、ZMP演算部32は、バケット内重量を含むホイールローダ1の総重量と重力加速度に基づき、重心位置Gに作用する鉛直下向きの重力F1のベクトルを演算する。ZMP演算部32は、走行経路Rの曲率と目標車速と、ホイールローダ1の総重量に基づき、重心位置Gに作用する遠心力F2のベクトルを演算する。
【0083】
ZMP演算部32は、各ノードにおける目標車速に基づき、各ノードにおける目標車速の時間変化率を演算する。所定のノードにおける目標車速の時間変化率は、例えば、所定のノードの目標車速と、所定のノードに隣接するノードの目標車速と、所定のノードとそれに隣接するノードとの間の距離と、に基づき演算することができる。ZMP演算部32は、ホイールローダ1の総重量と、目標車速の時間変化率に基づき、重心位置Gに作用する慣性力F3のベクトルを演算する。
【0084】
ZMP演算部32は、重心位置Gに作用する重力F1、遠心力F2、及び慣性力F3の合力F0のベクトルを演算する。ZMP演算部32は、合力F0のベクトルの延長線L0と、地面(ホイールローダ1の走行面)とが交わる点をZMPとして演算する。
【0085】
ホイールローダ1は、後述するように、走行経路Rの各ノードに設定される目標車速に基づいて、走行装置28が制御される。しかしながら、作業現場の地面の凹凸など、地面の状況によって、目標車速と実際の車速との間に差異が生じることがある。このため、本実施形態に係るZMP演算部32は、過去に検出された実際の車速と目標車速との差異に基づいたフィードバックを行う。
【0086】
図5及び
図6に示すフィードバック部25は、ホイールローダ1が走行経路Rに沿って自動走行している間、各ノードにおいて、車速センサ45により検出された実際の車速と、安定走行計画部23により演算された目標車速との差異を表すデータを、ノード及び作業現場の位置座標と対応付けて記憶する。実際の車速と目標車速との差異を表すデータと、作業現場の位置座標とが対応付けられたデータテーブルは、走行計画コントローラC1の不揮発性メモリ102に記憶される。
【0087】
実際の車速と目標車速との差異を表すデータは、例えば、目標車速に対する実際の車速の比率(以下、車速比とも記す)である。フィードバック部25は、各ノードにおいて、実際の車速から目標車速を除算することにより、車速比を求める。作業現場の位置座標に対応付けられる車速比は、過去のデータの平均値であってもよいし、直近のデータであってもよい。
【0088】
ZMP演算部32は、走行計画コントローラC1の不揮発性メモリ102に記憶された実際の車速と目標車速との差異を表すデータを加味して、ZMPを演算する。具体的には、ZMP演算部32は、目標車速に車速比を乗算した上で、重心位置Gに作用する遠心力F2及び慣性力F3を演算する。
【0089】
図6に示すように、走行安定性判定部36は、支持多角形演算部33により演算された支持多角形SPと、ZMP演算部32により演算されたZMPとの位置関係に基づき、車体16の走行安定性を判定する。具体的には、走行安定性判定部36は、安定領域設定部34によって設定された安定領域SA内に、ZMP演算部32によって演算されたZMPがあるかどうかで、車体16の状態が安定か不安定かを判定する。走行安定性判定部36は、安定領域SA内にZMPがある場合には、走行安定性が高い、すなわち車体16の状態は安定と判定する。走行安定性判定部36は、安定領域SA内にZMPがない場合には、走行安定性が低い、すなわち車体16の状態は不安定と判定する。
【0090】
車速演算部37は、走行経路Rの各位置における走行安定性の判定結果に基づき、目標車速を演算する。高さ演算部35は、走行経路Rの各位置における走行安定性の判定結果に基づき、目標リフトアーム高さを演算する。以下、目標車速と目標リフトアーム高さの演算方法について、詳しく説明する。演算された目標車速及び目標リフトアーム高さは、走行安定性の判定結果によっては修正される場合がある。つまり、走行安定性の判定処理が行われる前の演算結果である目標車速及び目標リフトアーム高さは、仮の目標値といえる。
【0091】
車速演算部37は、走行経路Rの各位置における目標車速を、予め定められた車速初期値に設定する。車速初期値は、例えば、オペレータによって運転されるホイールローダが、ローダ作業において走行経路Rに沿って走行する際の最高車速に基づき定められる。ホイールローダでは、積込位置に向かう場合、通常、速度段が2速に設定される。速度段が2速に設定されているときの最高車速は12km/h程度である。このため、走行経路R3の最終ノードを除く各ノードにおける目標車速の車速初期値には、最高車速である12km/hが設定される。なお、本実施形態では、最終ノードの目標車速は0(ゼロ)に設定される。
【0092】
走行安定性判定部36により車体16の状態が安定と判定された場合、車速演算部37は、その判定に用いた仮の目標車速を動作指令用の目標車速として決定する。走行安定性判定部36により車体16の状態が不安定と判定された場合、車速演算部37は、その判定に用いた目標車速から所定値を差し引いた値を新たな目標車速として決定する。走行安定性判定部36により車体16の状態が不安定と判定される度に、車速演算部37は、現在の目標車速に比べて所定値だけ低い新たな目標車速を演算する。車速演算部37は、車体16の状態が安定と判定されるまで、繰り返し、目標車速を低くする修正を行う。つまり、車速演算部37は、走行安定性が低い場合には、目標車速を下げる方向に修正する。
【0093】
車速演算部37は、走行経路R上の複数のノードと、複数のノードでの目標車速とを対応付けた走行計画情報を不揮発性メモリ102に記憶する。
【0094】
高さ演算部35は、走行経路Rの各位置における目標リフトアーム高さを、予め定められた高さ初期値に設定する。高さ初期値は、例えば、実機試験等により定められた高さ初期値テーブルと、経路生成部22により生成された走行経路Rと、に基づいて演算される。
【0095】
高さ初期値テーブルは、基準走行経路の各位置とリフトアーム高さとが対応付けられたデータテーブルである。例えば、ホイールローダ1が積込位置に向かう場合、積込位置に到着後にすぐに積込作業を開始できるように、走行しながらリフトアーム上げを行う動作(ライズラン)が実施される。このため、走行経路R3上のリフトアーム高さの演算に用いられる高さ初期値テーブルは、基準走行経路の走行開始位置から走行終了位置に向かってリフトアーム高さが徐々に高くなり、走行終了位置でリフトアーム高さが積込高さとなるデータにより構成されている。後述するように、目標リフトアーム高さは、車体16の状態が不安定と判定されると、低い値に修正される。このため、高さ初期値テーブルの高さ初期値は、実機試験により測定された値よりも大きな値にしておくことが好ましい。なお、高さ初期値テーブルに代えて、走行経路Rの各位置での目標リフトアーム高さの初期値を積込高さ(一定値)に設定してもよいが、実機試験から求められた初期値テーブルを用いることにより、演算負荷の低減を図ることができる。
【0096】
その他の走行経路R1,R2,R4の各位置における目標リフトアーム高さの高さ初期値についても同様に、それぞれに対応する高さ初期値テーブルあるいは初期値(一定値)に基づいて設定される。例えば、掘削作業用の走行経路R1の各位置のリフトアーム高さの高さ初期値は、
図1に示すような、リフトアーム2の先端部が車輪4の中心軸よりも下方に位置するような高さに設定される。
【0097】
高さ初期値テーブルの基準走行経路の経路長と、経路生成部22により生成された走行経路Rの経路長とが異なる場合、基準走行経路の経路長と走行経路Rの経路長との比率を加味して、走行経路Rの各位置での目標リフトアーム高さの高さ初期値が設定される。
【0098】
図6に示す走行安定性判定部36により車体16の状態が安定と判定された場合、高さ演算部35は、その判定に用いた仮の目標リフトアーム高さを動作指令用の目標リフトアーム高さとして決定する。走行安定性判定部36により車体16の状態が不安定と判定された場合、高さ演算部35は、その判定に用いた目標リフトアーム高さから所定値を差し引いた値を新たな目標リフトアーム高さとして決定する。走行安定性判定部36により車体16の状態が不安定と判定される度に、高さ演算部35は、現在の目標リフトアーム高さに比べて所定値だけ低い新たな目標リフトアーム高さを演算する。高さ演算部35は、車体16の状態が安定と判定されるまで、繰り返し、目標リフトアーム高さを低くする修正を行う。つまり、高さ演算部35は、走行安定性が低い場合には、目標リフトアーム高さを下げる方向に修正する。
【0099】
高さ演算部35は、走行経路R上の複数のノードと、複数のノードでの目標リフトアーム高さとを対応付けた走行計画情報を不揮発性メモリ102に記憶する。
【0100】
目標車速及び目標リフトアーム高さが更新されると、重心演算部31は、更新された目標リフトアーム高さを用いて重心位置Gを演算する。これにより、重心位置Gが更新される。重心位置Gが更新されると、ZMP演算部32は、更新された重心位置G、及び、更新された目標車速に基づき、ZMPを演算する。これにより、ZMPが更新される。ZMPが更新されると、走行安定性判定部36は、更新されたZMPと安定領域SAとの位置関係に基づき、走行安定性を判定する。
【0101】
以上のとおり、安定走行計画部23は、生成された走行経路R上の複数の位置と、その複数の位置における目標屈曲角と目標リフトアーム高さと目標車速とを対応付けた走行計画情報を不揮発性メモリ102に記憶する。走行計画情報は、例えば、データテーブルとして不揮発性メモリ102に記憶されている。安定走行計画部23は、車体16の状態が不安定と判定された場合には、その判定に用いた目標車速及び目標リフトアーム高さの修正を行い、その修正結果に基づき、重心位置G及びZMPの再演算を行い、再び、走行安定性の判定を行う。安定走行計画部23は、車体16の状態が安定と判定された場合には、その判定に用いた目標車速及び目標リフトアーム高さの修正を行わない。これにより、走行安定性の判定に用いた仮の目標車速及び仮の目標リフトアーム高さが、動作指令用の目標車速及び目標リフトアーム高さとして決定される。
【0102】
安定走行計画部23は、同じノード(同じ位置)における目標車速及び目標リフトアーム高さの演算回数mが予め定められた最大演算回数Mに達した場合、現状の走行経路では走行安定性が保てないと判断して走行経路Rを修正することを決定し、現在設定されている走行経路に対する各種演算を終了する。最大演算回数Mは、走行計画コントローラC1の不揮発性メモリ102に記憶されている。
【0103】
安定走行計画部23により走行経路Rの修正することが決定されると、
図5に示す切り返し位置設定部21は、現在の切り返し位置P0よりも目標掘削位置P1及び目標積込位置P2から遠い位置を新たな切り返し位置P0として設定する。切り返し位置設定部21により、新たな切り返し位置P0が設定されると、経路生成部22は、新たな走行経路Rを生成する。走行経路Rが更新されると、安定走行計画部23は、更新された走行経路Rに基づいて、再び、目標屈曲角、目標車速及び目標リフトアーム高さを演算する。
【0104】
動作指令部24は、不揮発性メモリ102に記憶された走行計画情報に基づき、動作指令としてのステアリング制御指令、走行制御指令(アクセル指令及びブレーキ指令)、アーム制御指令を演算し、その演算結果を車両制御コントローラC4へ出力する。車両制御コントローラC4は、動作指令部24から出力されたステアリング制御指令、走行制御指令、及びアーム制御指令に基づき、ステアリング装置19と走行装置28とリフトアーム2とを制御する。
【0105】
ここで、
図9を参照して減速度(車速低減率)、リフトアーム高さ、及び車体16の屈曲角と、走行安定性との関係について説明する。なお、屈曲角は、走行経路Rの曲率に置き換えることもできる。減速度(車速低減率)とは、車速の時間変化率が負である場合の車速の時間変化率の絶対値に相当する。
図9に示すように、減速度、リフトアーム高さ、及び、屈曲角によって、安定領域と不安定領域とを区分すると、安定領域と不安定領域との境界線が図示するように表される。図示される境界線の右上の領域が走行安定性の低い不安定領域であり、境界線の左下の領域が走行安定性の高い安定領域である。図示するように、ホイールローダ1は、減速度が大きくなるほど、リフトアーム高さが高くなるほど、屈曲角が大きいほど(走行経路Rの曲率が大きいほど)、不安定領域が大きくなる。
【0106】
図10のフローチャートを参照して本発明の実施形態に係る安定走行計画部23により実行される安定走行計画処理の流れの一例について説明する。なお、
図10のフローチャートに示す処理は、切り返し位置P0を走行開始位置、目標掘削位置P1を走行終了位置とした走行経路R1、目標掘削位置P1を走行開始位置、切り返し位置P0を走行終了位置とした走行経路R2、切り返し位置P0を走行開始位置、目標積込位置P2を走行終了位置とした走行経路R3、目標積込位置P2を走行開始位置、切り返し位置P0を走行終了位置とした走行経路R4のそれぞれに対して実行される。
【0107】
図10のフローチャートに示す処理は、安定走行計画処理の実行条件が成立したときに開始され、所定の制御周期で繰り返し実行される。安定走行計画処理の実行条件には、制御装置100により自動運転モードが設定されていることが含まれる。オペレータの入力装置38,72に対する操作によって制御装置100に自動運転開始指令が入力されると、制御装置100が自動運転モードを設定する。
【0108】
安定走行計画処理の実行条件は、走行経路R1~R4のそれぞれに対して設定されている。例えば、走行経路R3に対する安定走行計画処理の実行条件は、自動運転モードが設定され、かつ、走行経路R2に沿ってホイールローダ1が自動走行し、ホイールローダ1が目標切り返し位置P0に到達した場合に成立する。
【0109】
図10に示すように、ステップS1において、安定走行計画部23は、経路生成部22によって生成された走行経路Rを取得し、ステップS2へ進む。なお、走行経路Rに設定されているノードの数は、N個である。ステップS2において、重心演算部31は、荷重演算コントローラC3によって演算されたバケット内荷重を取得し、ステップS3へ進む。
【0110】
ステップS3において、安定走行計画部23は、ノード番号nをN+1に設定する。Nは、上述したようにノードの数である。ノード番号nは、ノードの番号を表す変数である。走行開始位置のノード番号nは1、走行終了位置のノード番号nはNである。ステップS3のノード番号nの設定処理が終わると、処理がステップS4へ進む。
【0111】
ステップS4において、安定走行計画部23は、現在設定されているノード番号nから1を引き、演算対象とするノードのノード番号nを設定して、ステップS5へ進む。ステップS5において、安定走行計画部23は、ステップS4において演算対象として設定されたノードでの目標屈曲角を演算して、ステップS6へ進む。
【0112】
ステップS6において、支持多角形演算部33は、ステップS6で演算された目標屈曲角に基づき、支持多角形SPを演算する。ステップS6において、安定領域設定部34は、支持多角形演算部33により演算された支持多角形SPに基づき、安定領域SAを設定する。ステップS6の領域演算処理が終わると、処理がステップS7へ進む。
【0113】
ステップS7において、安定走行計画部23は、現在演算対象として設定されているノードのノード番号nがNと一致するか否かを判定する。ステップS7において、現在演算対象として設定されているノードのノード番号nがノード数Nと一致する、すなわち演算対象となるノードが走行終了位置におけるノード(最終ノード)であると判定されると、処理がステップS8へ進む。ステップS7において、現在演算対象として設定されているノードのノード番号nがノード数Nと一致しない、すなわち演算対象となるノードが走行終了位置におけるノード(最終ノード)でないと判定されると、処理がステップS9へ進む。
【0114】
ステップS8において、車速演算部37は、目標車速を0(ゼロ)に設定する。また、ステップS8において、高さ演算部35は、目標リフトアーム高さを予め定められた走行終了位置の目標高さに設定する。ステップS8の処理が終わると、処理がステップS4へ戻る。ここで、走行終了位置の目標高さとは、積込位置に向かう走行経路R3を演算対象としている場合には、ダンプトラック92への積込高さに相当し、それ以外の走行経路R1,R2,R4の場合には、通常の走行姿勢での高さに相当する。
【0115】
つまり、ステップS8の処理は、最終ノードで車体16が停止するとともにリフトアーム高さが走行終了位置の目標高さとなるように行われる処理である。例えば、掘削物をダンプトラック92まで運ぶ際の走行経路R3を演算対象としている場合、ステップS8の処理は、ホイールローダ1が積込高さまでリフトアーム2を上げた状態で最終ノードに到達できるようにすることを目的として実行される。
【0116】
ステップS9において、安定走行計画部23は、演算回数mを0(ゼロ)に設定し、ステップS10へ進む。演算回数mは、一つのノードに対する目標車速、目標リフトアーム高さの演算の繰り返し回数を表す変数である。ステップS10において、走行安定性判定部36は、演算回数mに1を加えて、ステップS11へ進む。
【0117】
ステップS11において、車速演算部37は目標車速を演算し、高さ演算部35は目標リフトアーム高さを演算する。演算回数mが1の場合には、車速演算部37は目標車速に車速初期値を設定し、高さ演算部35は、目標リフトアーム高さに高さ初期値を設定する。演算回数mが1でない場合には、車速演算部37は、現在の目標車速から所定値を引いた値を新たな目標車速として設定し、高さ演算部35は、現在の目標リフトアーム高さから所定値を引いた値を新たな目標リフトアーム高さとして設定する。ステップS11の処理が終わると、処理がステップS12へ進む。
【0118】
ステップS12において、重心演算部31は、ステップS2で取得したバケット内荷重、ステップS5で演算された目標屈曲角、及び、ステップS11で演算されたリフトアーム高さに基づき、ホイールローダ(車両)1の重心位置Gを演算し、ステップS13へ進む。
【0119】
ステップS13において、ZMP演算部32は、ステップS5で演算された目標屈曲角と、ステップS11で演算された目標車速と、ステップS12で演算された重心位置Gと、不揮発性メモリ102に記憶されている車速比と、に基づき、ZMPを演算し、ステップS14へ進む。ステップS14において、走行安定性判定部36は、ステップS13で演算したZMPが安定領域SA内にあるか否かを判定する。ステップS14において、走行安定性判定部36は、ZMPが安定領域SA内にあると判定すると、当該ノードにおける車体16の状態は安定であることを表すフラグを設定して、ステップS17へ進む。ステップS14において、走行安定性判定部36は、ZMPが安定領域SA内にないと判定されると、当該ノードにおける車体16の状態は不安定であることを表すフラグを設定して、ステップS15へ進む。
【0120】
ステップS15において、安定走行計画部23は、演算回数mが最大演算回数Mと一致するか否かを判定する。ステップS15において、演算回数mが最大演算回数Mと一致しないと判定されると、処理がステップS10へ戻る。ステップS15において、演算回数mが最大演算回数Mと一致すると判定されると、処理がステップS16へ進む。すなわち、ステップS15において、n番目のノードにおける目標車速、目標高さの演算回数mが最大演算回数Mに達したと判定されると、処理がステップS16へ進む。
【0121】
ステップS16において、安定走行計画部23は、走行経路Rの修正(再演算)を決定し、
図10のフローチャートに示す処理を終了する。ステップS16において、走行経路Rの修正(再演算)が決定されると、切り返し位置設定部21は切り返し位置P0を目標掘削位置P1及び目標積込位置P2から遠ざかる方向に所定距離だけ移動させて新たな切り返し位置P0として設定する。さらに、経路生成部22は、目標掘削位置P1及び目標積込位置P2、並びに、切り返し位置設定部21により演算された新たな切り返し位置P0に基づき、走行経路Rの再演算を行う。
【0122】
ステップS17において、走行安定性判定部36は、ノード番号nが1と一致するか否かを判定する。本実施形態では、ノード番号n=Nからノード番号n=1まで、順次、目標屈曲角、目標車速及び目標リフトアーム高さを演算する。つまり、ステップS17の処理は、走行経路Rにおける全てのノードに対する目標屈曲角、目標車速及び目標リフトアーム高さの演算が終了したか否かを判定する処理に相当する。
【0123】
ステップS17において、ノード番号nが1と一致しないと判定されると、すなわち走行経路Rにおける全てのノードに対する目標屈曲角、目標車速及び目標リフトアーム高さの演算が終了していないと判定されると、処理がステップS4へ進む。ステップS4において、演算対象とするノードを隣接するノードに変更し、それ以降の処理において、そのノードにおける目標屈曲角、目標高さ及び目標リフトアーム高さを演算する処理が実行される。
【0124】
ステップS17において、ノード番号nが1と一致すると判定されると、すなわち走行経路Rにおける全てのノードに対する目標屈曲角、目標車速及び目標リフトアーム高さの演算が終了したと判定されると、
図10のフローチャートに示す処理が終了する。
【0125】
ステップS17の処理において、ノード番号nが1と一致すると判定されると、動作指令部24は、
図10に示す安定走行計画処理において演算された走行経路R上の各ノードにおける目標屈曲角、目標車速及び目標リフトアーム高さによって構成される走行計画情報に基づき、動作指令を生成し、車両制御コントローラC4に出力する。これにより、ホイールローダ1の自動走行が開始される。つまり、ステップS17の判定処理は、ホイールローダ1の自動走行を開始する条件(以下、走行開始条件とも記す)が成立したか否かを判定する処理に相当する。
【0126】
本実施形態に係る制御装置100の演算内容の一例をまとめると以下のとおりである。ホイールローダ1は、
図3に示すように、ローダ作業を繰り返し行う。制御装置100は、車両が切り返し位置P0に位置すると、撮影装置15により撮影された映像のデータに基づき、次のローダ作業における目標掘削位置P1及びその位置での目標方位角A1、目標積込位置P2及びその位置での目標方位角A2、並びに、目標切り返し位置P0及びその位置での目標方位角A0を設定し、それらの設定情報に基づき走行経路R1~R4を生成する。
【0127】
制御装置100は、走行経路R1において走行安定性を確保しつつ走行が可能な各ノードでの目標車速、目標リフトアーム高さ、目標屈曲角を含む走行計画情報を演算し、演算した走行計画情報に基づき動作指令を生成する。制御装置100は、生成された動作指令に基づき、各部を制御し、走行経路R1に沿って車両を走行させる。目標掘削位置P1に車両が到達すると、掘削作業が自動で行われる。掘削作業が完了すると、制御装置100は、走行経路R2において走行安定性を確保しつつ走行が可能な各ノードでの目標車速、目標リフトアーム高さ、目標屈曲角を含む走行計画情報を演算し、演算した走行計画情報に基づき動作指令を生成する。制御装置100は、生成された動作指令に基づき、各部を制御し、走行経路R2に沿って車両を走行させる。目標切り返し位置P0に車両が到達すると、制御装置100は、走行経路R3において走行安定性を確保しつつ走行が可能な各ノードでの目標車速、目標リフトアーム高さ、目標屈曲角を含む走行計画情報を演算し、演算した走行計画情報に基づき動作指令を生成する。制御装置100は、生成された動作指令に基づき、各部を制御し、走行経路R3に沿って車両を走行させる。目標積込位置P2に車両が到達すると、積込作業が自動で行われる。積込作業が完了すると、制御装置100は、走行経路R4において走行安定性を確保しつつ走行が可能な各ノードでの目標車速、目標リフトアーム高さ、目標屈曲角を含む走行計画情報を演算し、演算した走行計画情報に基づき動作指令を生成する。
【0128】
制御装置100は、走行経路Rの各ノードでの目標車速、目標リフトアーム高さ、目標屈曲角の演算処理に先立って、バケット内荷重を演算する。制御装置100は、各走行経路Rの最終ノードにおける目標車速及び目標リフトアーム高さを演算する(ステップS5,S8)。
【0129】
その後、制御装置100は、最終ノード以外のノードにおける目標屈曲角、目標車速及び目標リフトアーム高さを順次演算する(ステップS5,S11)。制御装置100は、演算した目標屈曲角、目標車速及び目標リフトアーム高さに基づき、演算対象となっているノードでの車体16の状態が安定か不安定かを判定する(ステップS12,S13,S14)。
【0130】
演算対象となっているノードでの車体16の状態が不安定と判定された場合には、目標車速及び目標リフトアーム高さを修正する(ステップS14でNo,S15でNo,S10,S11)。制御装置100は、目標屈曲角、修正された目標車速及び目標リフトアーム高さに基づき、演算対象となっているノードでの車体16の状態が安定か不安定かを判定する(ステップS12,S13,S14)。
【0131】
演算対象となっているノードでの車体16の状態が安定と判定された場合(ステップS14でYes)には、その判定に用いられた目標車速及び目標リフトアーム高さが、動作指令の演算に用いられる目標値となる。その後、制御装置100は、次のノードを演算対象として同様の処理を実行する。
【0132】
つまり、制御装置100は、ステップS5~S7,S9~S14,S17の処理を繰り返し行う。これにより、走行終了位置のノード(最終ノード)から走行開始位置のノードまで、順番に、各ノードでの目標屈曲角、目標車速、目標リフトアーム高さが演算される。
【0133】
なお、制御装置100は、目標車速及び目標リフトアーム高さの演算及び走行安定性の判定処理の一連の演算処理を最大演算回数Mまで繰り返し行っても車体16の状態が安定にならない場合、走行経路Rの修正(再演算)を決定する(ステップS15でYes,S16)。
【0134】
以上のように、本実施形態において、制御装置100は、目標屈曲角、目標車速、目標リフトアーム高さに基づき、ホイールローダ(車両)1の走行安定性を評価し、走行安定性が低い場合(不安定の場合)には目標屈曲角、目標車速、目標リフトアーム高さの修正を行う。例えば、走行経路R3において、目標積込位置(走行終了位置)の手前の減速領域DAではリフトアーム高さが高い状態で車体16が減速するため、走行安定性が低くなりやすい。本実施形態において、制御装置100は、走行終了位置(目標積込位置)での目標車速、目標リフトアーム高さを初めに決めて、走行終了位置から走行開始位置までの走行経路上で走行安定性を保つことが可能な目標車速、目標リフトアーム高さを演算していく。したがって、本実施形態によれば、走行開始位置(目標切り返し位置)のノードから走行終了位置(目標積込位置)のノードまで順に演算を行う場合に比べて、演算時間(演算負荷)を低減することができる。
【0135】
ステップS17の判定処理において、走行開始位置の目標屈曲角、目標車速、目標リフトアーム高さの演算処理が完了したと判定され、
図10に示す安定走行計画処理が完了すると、車両制御コントローラC4は、走行開始条件が成立したと判定する。そして、車両制御コントローラC4は、走行経路Rと、走行経路Rの各ノードに設定された目標屈曲角、目標車速及び目標リフトアーム高さに基づいて、ホイールローダ1の自動走行を開始する。
【0136】
上述した実施形態によれば、次の作用効果を奏する。
【0137】
(1)ホイールローダ1は、前輪4aを有するフロントボディ11と後輪4bを有するリアボディ12とが屈曲可能に連結された車体16と、フロントボディ11に回動可能に設けられたリフトアーム2と、リフトアーム2に回動可能に設けられたバケット3と、車体16を走行させる走行装置28と、車体16を屈曲させることにより屈曲角を変更し操舵させるステアリング装置19と、作業現場における掘削位置と積込位置とに基づき走行経路Rを生成し、生成された走行経路Rに沿って車体16が走行するように、走行装置28及びステアリング装置19を制御する制御装置100と、を備える。
【0138】
制御装置100は、生成された走行経路R1に基づき、走行経路R1上における目標屈曲角と、目標リフトアーム高さと、目標車速とを演算する。制御装置100は、演算された目標屈曲角と、演算された目標リフトアーム高さとに基づき、ホイールローダ1の重心位置Gを演算する。制御装置100は、演算された目標屈曲角と、演算された目標車速と、演算された重心位置とに基づき、車体16の走行安定性を判定し走行装置28及びステアリング装置19を制御する。
【0139】
この構成では、走行経路Rにおいて、安定した自動走行が可能かどうかを適切に判断することができる。本実施形態では、走行経路R上の全てのノードにおいて走行安定性が安定と判定されるまで、ホイールローダ1は、走行を開始しない。このため、ホイールローダ1が自動運転中に不安定な姿勢になることが防止される。つまり、本実施形態によれば、ホイールローダ1を、生成された走行経路R1に沿って安定して自動走行させることができる。
【0140】
(2)制御装置100は、生成された走行経路R上の複数の位置(ノード)と、その複数の位置における目標屈曲角と目標リフトアーム高さと目標車速とを対応付けた走行計画情報(データテーブル)を記憶装置(不揮発性メモリ102)に記憶する。制御装置100は、車体16の状態が不安定と判定された場合には、目標車速及び目標リフトアーム高さの修正を行う。制御装置100は、車体16の状態が安定と判定された場合には、目標車速及び目標リフトアーム高さの修正を行わない。制御装置100は、記憶装置(不揮発性メモリ102)に記憶された走行計画情報(データテーブル)に基づき、ステアリング装置19と走行装置28とリフトアーム2とを制御する。
【0141】
この構成では、走行安定性の判定処理により、車体16の状態が不安定と判定された目標車速及び目標リフトアーム高さが修正される。目標車速及び目標リフトアーム高さが修正された結果、車体16の状態が安定と判定されると、その判定に用いられた目標車速及び目標リフトアーム高さが動作指令用の目標値として走行経路R上の位置に対応付けられて記憶保持される。つまり、この構成では、走行経路R上の複数の位置において、車体16の状態が安定と判定されるまで、目標車速及び目標リフトアーム高さの修正が行われる。その結果、ホイールローダ1を走行経路Rに沿って、安定して自動走行させることができる。
【0142】
(3)ホイールローダ1は、バケット3に積載された積荷の荷重(バケット内荷重)を検出する積荷荷重検出装置50を備える。制御装置100は、演算された目標屈曲角に基づき、支持多角形SPを演算する。制御装置100は、積荷荷重検出装置50によって検出された積荷の荷重(バケット内荷重)と、演算された目標リフトアーム高さと、演算された目標屈曲角と、に基づき、重心位置Gを演算する。制御装置100は、演算された重心位置Gと、演算された目標車速とに基づき、重心位置Gに作用する力(重力F1と遠心力F2と慣性力F3の合力)F0のベクトルを演算する。制御装置100は、演算された力F0のベクトルと走行面とが交わる点であるZMPを演算する。制御装置100は、演算された支持多角形SPと、演算されたZMPとの位置関係に基づき、車体16の走行安定性を判定する。
【0143】
この構成では、自動走行の開始前に検出されるバケット内荷重に基づいて、走行経路R上の各位置におけるホイールローダ1の重心位置Gを精度よく演算することができる。したがって、走行経路R上の各位置における車体16の走行安定性をより適切に判断することができる。これにより、自動走行時に高い走行安定性を確保することができる。
【0144】
(4)制御装置100は、演算された支持多角形SPの内側に、演算された支持多角形SPよりも小さい安定領域SAを設定する。制御装置100は、設定された安定領域SA内に演算されたZMPがある場合には、車体16の状態は安定と判定する。制御装置100は、設定された安定領域SA内に演算されたZMPがない場合には、車体16の状態は不安定と判定する。
【0145】
この構成では、地面に凹凸がある作業現場での走行経路R上の各位置における車体16の走行安定性を適切に判断することができる。これにより、作業現場の走行面(地面)に凹凸がある場合であっても、自動走行時に、高い走行安定性を確保することができる。
【0146】
(5)ホイールローダ1は、生成された走行経路Rに沿って走行するホイールローダ1の実際の車速を検出する車速センサ45を備える。制御装置100は、生成された走行経路R上の位置と、その位置における車速センサ45により検出された実際の車速と、演算された目標車速との差異を表すデータと、を対応付けて記憶装置(不揮発性メモリ102)に記憶する。制御装置100は、記憶装置(不揮発性メモリ102)に記憶された実際の車速と、演算された目標車速との差異を表すデータを加味して、ZMPを演算する。
【0147】
この構成では、目標車速と実際の車速との差異を表すデータが加味されてZMPが演算されるので、走行安定性を精度よく判定することができる。これにより、作業現場の地面の状況、ホイールローダ1の個体差等により、目標車速と実際の車速との間に差が生じるような場合であっても、走行経路R上の各位置における車体16の走行安定性を適切に判断することができる。これにより、自動走行時に、高い走行安定性を確保することができる。
【0148】
(6)ホイールローダ1は、車体16の周囲の物体を検出する物体検出装置56を備える。制御装置100は、物体検出装置56の検出結果に基づき、作業現場における目標掘削位置P1と目標積込位置P2とを設定する。制御装置100は、設定された目標掘削位置P1と、設定された目標積込位置P2とに基づき、目標切り返し位置P0を設定する。制御装置100は、設定された目標切り返し位置P0から設定された目標掘削位置P1までの掘削作業用の走行経路R1と、設定された目標掘削位置P1から設定された目標切り返し位置P0までの第1戻り用の走行経路R2と、設定された目標切り返し位置P0から設定された目標積込位置P2までの積込作業用の走行経路R3と、設定された目標積込位置P2から設定された目標切り返し位置P0までの第2戻り用の走行経路R4と、を生成する。
【0149】
この構成では、自動運転によりローダ作業が繰り返し行われることにより、地山91の形状が変化したり、ダンプトラック92の入れ換えがあったりするなど、車体16の周囲の状況が変化した場合であっても、目標掘削位置P1、目標積込位置P2及び各走行経路R1~R4が適切に設定される。これにより、ホイールローダ1の作業効率を向上することができる。
【0150】
(7)制御装置100は、車体16の状態が不安定と判定された場合には、目標車速及び目標リフトアーム高さを低くする修正を行う。これにより、車体16の状態が安定と判定される目標車速及び目標リフトアーム高さを適切に演算することができる。
【0151】
(8)制御装置100は、生成された走行経路R上の同じ位置における目標車速及び目標リフトアーム高さの修正を所定回数(M-1回)行い、車体16の状態が安定と判定されなかった場合には、走行経路Rの修正を行う。
【0152】
この構成では、制御装置100により、目標車速及び目標リフトアーム高さの修正だけでは、高い走行安定性を確保できないと判断され、走行経路Rの修正(再演算)が行われる。これにより、演算対象とした走行経路Rにおいて、高い走行安定性が確保できないと判断された場合であっても、制御装置100は、修正した走行経路Rにおいて、再び、安定した自動走行が可能かどうかを適切に判断することができる。
【0153】
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明をわかり易く説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。次のような変形例も本発明の範囲内であり、変形例に示す構成と上述の実施形態で説明した構成を組み合わせたり、以下の異なる変形例で説明する構成同士を組み合わせたりすることも可能である。
【0154】
<変形例1>
上記実施形態では、各走行経路R1~R4において、支持多角形SPを構成する各辺を、支持多角形SPの内側に所定距離だけオフセットさせた複数の線によって囲まれる領域が、安定領域SAとして設定される例について説明したが、本発明はこれに限定されない。ローダ作業では、走行経路R1における掘削位置の手前、走行経路R2,R4における切り返し点の手前、及び、走行経路R3における積込位置の手前では、車両が減速しているため、車両が不安定になりやすい。特に、走行経路R3における積込位置の手前ではリフト上げ動作が行われているため、車両が不安定になりやすい。このため、走行経路R1,R2,R4における走行安定性の判定に用いる安定領域SAに比べて、走行経路R3における走行安定性の判定に用いる安定領域SAを小さく設定してもよい。これにより、自動運転により走行しながらリフトアーム上げを行う動作(ライズラン)が実施された場合に、より高い安定性で車両を走行させることができる。
【0155】
さらに、同じ走行経路であっても、その位置に応じて安定領域SAの大きさが変更されるようにしてもよい。例えば、走行経路R3では、積込位置の手前において、リフトアーム高さが高い位置にある状態で減速が行われる。
【0156】
このため、制御装置100は、積込作業用の走行経路R3において、設定された目標積込位置P2に近づくほど、安定領域SAを小さく設定してもよい。例えば、制御装置100は、
図3に示す走行経路R3の減速領域DAでの安定領域SAの大きさを、走行経路R3の減速領域DA以外の安定領域SAの大きさに比べて小さく設定する。
【0157】
この構成によれば、走行経路R3における積込位置の手前において、より高い安定性で車両を走行させることができる。
【0158】
<変形例2>
上記実施形態では、支持多角形SPの内側に安定領域SAが設定される例について説明したが、本発明はこれに限定されない。制御装置100は、安定領域SAを設定せずに、支持多角形SP内にZMPがある場合には、車体16の状態は安定と判定し、支持多角形SP内にZMPがない場合には、車体16の状態は不安定と判定してもよい。
【0159】
<変形例3>
上記実施形態では、制御装置100が、車体16の状態が不安定と判定された場合には、その判定に用いられた目標車速及び目標リフトアーム高さの双方を低くする修正を行う例について説明したが、本発明はこれに限定されない。制御装置100は、車体16の状態が不安定と判定された場合には、その判定に用いられた目標車速及び目標リフトアーム高さの一方のみを低くする修正を行ってもよい。
【0160】
制御装置100が、車体16の状態が不安定と判定された場合に、目標車速及び目標リフトアーム高さの少なくとも一方を低くする修正を行うことにより、車体16の状態が安定と判定される目標車速及び目標リフトアーム高さを適切に演算することができる。
【0161】
<変形例4>
制御装置100は、リフトアーム優先モード、車速優先モード、及び通常モードをそれぞれ備え、リフトアーム優先モードと車速優先モードと通常モードの中から、オペレータの操作に応じて一つの演算モードが設定されるように構成されていてもよい。制御装置100は、運転室5内に設けられたモード選択操作部としての入力装置38からのモード選択信号に応じて演算モードの設定を行う。また、制御装置100は、遠隔操作装置70に設けられたモード選択操作部としての入力装置72から通信装置46を介して取得したモード選択信号に応じて演算モードの設定を行う。
【0162】
リフトアーム優先モードは、車体16の状態が不安定と判定された場合に、目標車速の修正を行い、かつ、目標リフトアーム高さの修正を行わない演算モードである。車速優先モードは、車体16の状態が不安定と判定された場合に、目標リフトアーム高さの修正を行い、かつ、目標車速の修正を行わない演算モードである。通常モードは、車体16の状態が不安定と判定された場合に、目標車速及び目標リフトアーム高さの双方の修正を行う演算モードである。オペレータは、モード選択操作部(入力装置38,72)を操作することにより、リフトアーム優先モード、車速優先モード、及び通常モードの中から一つの演算モードを選択することができる。つまり、オペレータは、車体16の状態が不安定と判定された場合の目標値の修正方法を自由に選ぶことができる。
【0163】
<変形例5>
上記実施形態では、ホイールローダ1が、撮影装置15により撮影された映像のデータに基づき、地山91及びダンプトラック92などの物体を検出する物体検出装置56を備える例について説明したが、本発明はこれに限定されない。物体検出装置56は、超音波センサ、ミリ波センサ、レーザレーダセンサ、赤外線センサ等の検出結果に基づいて物体を検出する装置であってもよい。
【0164】
<変形例6>
上記実施形態では、各走行経路R1~R4での走行安定性の判定の際に、積荷荷重検出装置50により演算されたバケット内荷重を取得する例(
図10のステップS2参照)について説明したが、本発明はこれに限定されない。バケット内荷重は、不揮発性メモリ102に予め記憶された所定荷重Wとしてもよい。例えば、走行経路R1,R4の走行安定性の判定に用いられる所定荷重W1,W4は、0(ゼロ)であり、走行経路R2,R3の走行安定性の判定に用いられる所定荷重W2,W3は、0(ゼロ)よりも大きい値である。所定荷重W2,W3は、例えば、実機試験により、ローダ作業におけるバケット3に積み込まれた土砂をホイールローダ1の外部に設けられる荷重計測装置に放土し、その荷重を計測することにより定めることができる。
【0165】
<変形例7>
上記実施形態では、制御装置100は、物体検出装置56の検出結果に基づき、作業現場における目標掘削位置P1と目標積込位置P2とを設定する例について説明したが、本発明はこれに限定されない。例えば、制御装置100は、オペレータの操作に応じて入力装置38から入力される座標に基づき、作業現場における目標掘削位置P1と目標積込位置P2とを設定してもよい。制御装置100は、遠隔操作装置70から送信される座標に基づき、作業現場における目標掘削位置P1と目標積込位置P2とを設定してもよい。
【0166】
<変形例8>
制御装置100は、走行安定性の判定結果を運転室5内の表示装置39に表示させてもよい。また、制御装置100は、走行安定性の判定結果を通信装置46を介して、遠隔操作装置70に送信してもよい。遠隔操作装置70の遠隔操作コントローラC5は、表示装置73に走行安定性の判定結果を表示させる。この構成によれば、表示装置39,73に表示される画像を見て、オペレータは、現在の車体16の周囲の状況において、ホイールローダ1を自動運転させるか否かを判断することができる。
【0167】
<変形例9>
ホイールローダ1の構成は、上記実施形態で説明した例に限定されない。ホイールローダ1は、例えば、エンジン40に機械的に接続される発電電動機と、発電電動機によって発電された電力により回転駆動され走行装置を動作させる走行電動機と、を備える構成であってもよい。つまり、ホイールローダ1は、エンジン40の動力を電気に変換して車輪4に伝達するハイブリッド式の動力伝達機構を備えていてもよい。また、ホイールローダは、エンジン40の動力を油圧に変換して車輪4に伝達するHST(Hydro Static Transmission)式の動力伝達機構を備えていてもよい。
【0168】
以上、本発明の実施形態について説明したが、上記実施形態は本発明の適用例の一部を示したに過ぎず、本発明の技術的範囲を上記実施形態の具体的構成に限定する趣旨ではない。
【符号の説明】
【0169】
1…ホイールローダ(車両)、2…リフトアーム、3…バケット、4…車輪、4a…前輪、4b…後輪、7…アームシリンダ(油圧シリンダ)、8…バケットシリンダ(油圧シリンダ)、11…フロントボディ、12…リアボディ、13…センターピン、14…ステアリングシリンダ(油圧シリンダ)、15…撮影装置、16…車体、17…作業装置、18…ブレーキ装置、19…ステアリング装置、21…切り返し位置設定部、22…経路生成部、23…安定走行計画部、24…動作指令部、25…フィードバック部、28…走行装置、30…屈曲角演算部、31…重心演算部、32…ZMP演算部、33…支持多角形演算部、34…安定領域設定部、35…高さ演算部、36…走行安定性判定部、37…車速演算部、38…入力装置、39…表示装置、40…エンジン、41…アーム角度センサ、42…バケット角度センサ、43…圧力センサ、44…屈曲角センサ、45…車速センサ、46…通信装置、47…位置検出装置、50…積荷荷重検出装置、56…物体検出装置、60A,60B,60C…油圧ポンプ、61…フロント制御部、62…ブレーキ制御部、63…ステアリング制御部、64…トランスミッション制御部、65…エンジン制御部、70…遠隔操作装置、71…通信装置、72…入力装置、73…表示装置、91…地山(掘削対象物)、92…ダンプトラック(運搬車両)、100…制御装置、101…処理装置、102…不揮発性メモリ(記憶装置)、C…コントローラ、C1…走行計画コントローラ、C2…位置設定コントローラ、C3…荷重演算コントローラ、C4…車両制御コントローラ、C5…遠隔操作コントローラ、DA…減速領域、F0…重心位置Gに作用する力(重力F1と遠心力F2と慣性力F3の合力)、P0…目標切り返し位置、P1…目標掘削位置、P2…目標積込位置、Pt1,Pt2,Pt3,Pt4…接地点、R…走行経路、SA…安定領域、SP…支持多角形