本発明を実施するための形態(実施形態)につき、図面を参照しつつ詳細に説明する。
(実施形態1)
<作業機械の全体構成>
図1は、実施形態1に係る作業機械の斜視図である。図2は、油圧ショベル100の油圧システム300と制御システム200との構成を示すブロック図である。作業機械としての油圧ショベル100は、本体部としての車両本体1と作業機2とを有する。車両本体1は、旋回体としての上部旋回体3と走行体としての走行装置5とを有する。上部旋回体3は、機関室3EGの内部に、動力発生装置としてのエンジン及び油圧ポンプ等の装置を収容している。機関室3EGは、上部旋回体3の一端側に配置されている。
本実施形態において、油圧ショベル100は、動力発生装置としてのエンジンに、例えばディーゼルエンジン等の内燃機関が用いられるが、動力発生装置はこのようなものに限定されない。油圧ショベル100の動力発生装置は、例えば、内燃機関と発電電動機と蓄電装置とを組み合わせた、いわゆるハイブリッド方式の装置であってもよい。また、油圧ショベル100の動力発生装置は、内燃機関を有さず、蓄電装置と発電電動機とを組み合わせたものであってもよい。
上部旋回体3は、運転室4を有する。運転室4は、上部旋回体3の他端側に設置されている。すなわち、運転室4は、機関室3EGが配置されている側とは反対側に設置されている。運転室4内には、図2に示す、表示部29及び操作装置25が配置される。これらについては後述する。上部旋回体3の上方には、手すり9が取り付けられている。
走行装置5は、上部旋回体3を搭載する。走行装置5は、履帯5a、5bを有している。走行装置5は、左右に設けられた走行モータ5cの一方又は両方が駆動し、履帯5a、5bが回転することにより、油圧ショベル100を走行させる。作業機2は、上部旋回体3の運転室4の側方側に取り付けられている。
油圧ショベル100は、履帯5a、5bの代わりにタイヤを備え、エンジンの駆動力を、トランスミッションを介してタイヤへ伝達して走行が可能な走行装置を備えたものであってもよい。このような形態の油圧ショベル100としては、例えば、ホイール式油圧ショベルがある。また、油圧ショベル100は、このようなタイヤを有した走行装置を備え、さらに車両本体(本体部)に作業機が取り付けられ、図1に示すような上部旋回体3及びその旋回機構を備えていない構造を有する、例えばバックホウローダであってもよい。すなわち、バックホウローダは、車両本体に作業機が取り付けられ、車両本体の一部を構成する走行装置を備えたものである。
上部旋回体3は、作業機2及び運転室4が配置されている側が前であり、機関室3EGが配置されている側が後である(x方向)。前に向かって左側が上部旋回体3の左であり、前に向かって右側が上部旋回体3の右である。上部旋回体3の左右方向は、幅方向とも言う(y方向)。油圧ショベル100又は車両本体1は、上部旋回体3を基準として走行装置5側が下であり、走行装置5を基準として上部旋回体3側が上である(z方向)。油圧ショベル100が水平面に設置されている場合、下は鉛直方向、すなわち重力の作用方向側であり、上は鉛直方向とは反対側である。
作業機2は、ブーム6とアーム7と作業具としてのバケット8とブームシリンダ10とアームシリンダ11とバケットシリンダ12とを有する。ブーム6の基端部は、ブームピン13を介して車両本体1の前部に回動可能に取り付けられている。アーム7の基端部は、アームピン14を介してブーム6の先端部に回動可能に取り付けられている。アーム7の先端部には、バケットピン15を介してバケット8が取り付けられている。バケット8は、バケットピン15を中心として回動する。バケット8は、バケットピン15とは反対側に複数の刃8Bが取り付けられている。刃先8Tは、刃8Bの先端である。
バケット8は、複数の刃8Bを有していなくてもよい。つまり、図1に示すような刃8Bを有しておらず、刃先が鋼板によってストレート形状に形成されたようなバケットであってもよい。作業機2は、例えば、単数の刃を有するチルトバケットを備えていてもよい。チルトバケットとは、バケットチルトシリンダを備え、バケットが左右にチルト傾斜することで油圧ショベルが傾斜地にあっても、斜面、平地を自由な形に成形、整地をすることができ、底板プレートによる転圧作業もできるバケットである。この他にも、作業機2は、バケット8の代わりに、法面バケット又は削岩用のチップを備えた削岩用のアタッチメント等を備えていてもよい。
図1に示すブームシリンダ10とアームシリンダ11とバケットシリンダ12とは、それぞれ作動油の圧力(以下、適宜油圧という)によって駆動される油圧シリンダである。ブームシリンダ10はブーム6を駆動して、これを昇降させる。アームシリンダ11は、アーム7を駆動して、アームピン14の周りを回動させる。バケットシリンダ12は、バケット8を駆動して、バケットピン15の周りを回動させる。
ブームシリンダ10、アームシリンダ11及びバケットシリンダ12等の油圧シリンダと図2に示す油圧ポンプ36、37との間には、図2に示す方向制御弁64が設けられている。方向制御弁64は、油圧ポンプ36、37からブームシリンダ10、アームシリンダ11及びバケットシリンダ12等に供給される作動油の流量を制御するとともに、作動油が流れる方向を切り替える。方向制御弁64は、走行モータ5cを駆動するための走行用方向制御弁と、ブームシリンダ10、アームシリンダ11及びバケットシリンダ12並びに上部旋回体3を旋回させる旋回モータを制御するための作業機用方向制御弁とを含む。
操作装置25から供給される、所定のパイロット圧力に調整された作動油が方向制御弁64のスプールを動作させると、方向制御弁64から流出する作動油の作動油の流量が調整されて、油圧ポンプ36、37からブームシリンダ10、アームシリンダ11、バケットシリンダ12、旋回モータ又は走行モータ5cに供給される作動油の流量が制御される。その結果、ブームシリンダ10、アームシリンダ11及びバケットシリンダ12等の動作が制御される。
また、図2に示す作業機コントローラ26が、図2に示す制御弁27を制御することにより、操作装置25から方向制御弁64に供給される作動油のパイロット圧が制御されるので、方向制御弁64からブームシリンダ10、アームシリンダ11、バケットシリンダ12に供給される作動油の流量が制御される。その結果、作業機コントローラ26は、ブームシリンダ10、アームシリンダ11及びバケットシリンダ12等の動作を制御することができる。
上部旋回体3の上部には、アンテナ21、22が取り付けられている。アンテナ21、22は、油圧ショベル100の現在位置を検出するために用いられる。アンテナ21、22は、図2に示す、油圧ショベル100の現在位置を検出するための位置検出部としての位置検出装置19と電気的に接続されている。位置検出装置19は、RTK−GNSS(Real Time Kinematic - Global Navigation Satellite Systems、GNSSは全地球航法衛星システムを言う)を利用して油圧ショベル100の現在位置を検出する。以下の説明において、アンテナ21、22を、適宜GNSSアンテナ21、22という。GNSSアンテナ21、22が受信したGNSS電波に応じた信号は、位置検出装置19に入力される。位置検出装置19は、GNSSアンテナ21、22の設置位置を検出する。位置検出装置19は、例えば、3次元位置センサを含む。
GNSSアンテナ21、22は、図1に示すように、上部旋回体3の上であって、油圧ショベル100の左右方向に離れた両端位置に設置されることが好ましい。本実施形態において、GNSアンテナ21、22は、上部旋回体3の幅方向両側にそれぞれ取り付けられた手すり9に取り付けられる。GNSアンテナ21、22が上部旋回体3に取り付けられる位置は手すり9に限定されるものではないが、GNSアンテナ21、22は、可能な限り離れた位置に設置される方が、油圧ショベル100の現在位置の検出精度は向上するので好ましい。また、GNSSアンテナ21、22は、オペレータの視界を極力妨げない位置に設置されることが好ましい。
図2に示すように、油圧ショベル100の油圧システム300は、動力発生源としてのエンジン35と油圧ポンプ36、37とを備える。油圧ポンプ36、37は、エンジン35によって駆動され、作動油を吐出する。油圧ポンプ36、37から吐出された作動油は、ブームシリンダ10とアームシリンダ11とバケットシリンダ12とに供給される。また、油圧ショベル100は、旋回モータ38を備える。旋回モータ38は、油圧モータであり、油圧ポンプ36、37から吐出された作動油によって駆動される。旋回モータ38は、上部旋回体3を旋回させる。なお、図2では、2つの油圧ポンプ36、37が図示されているが、1つの油圧ポンプのみが設けられてもよい。旋回モータ38は、油圧モータに限らず、電気モータであってもよい。
作業機械の制御システムとしての制御システム200は、位置検出装置19と、グローバル座標演算部23と、角速度及び加速度を検出する検出装置としてのIMU(Inertial Measurement Unit:慣性計測装置)24と、操作装置25と、作業機制御部としての作業機コントローラ26と、センサコントローラ39と、生成部としての表示コントローラ28と、表示部29とを含む。操作装置25は、図1に示す作業機2を操作するための装置である。操作装置25は、作業機2を駆動するためのオペレータによる操作を受け付けて、操作量に応じた作動油を出力する。
例えば、操作装置25は、オペレータの左側に設置される左操作レバー25Lと、オペレータの右側に配置される右操作レバー25Rと、を有する。左操作レバー25L及び右操作レバー25Rは、前後左右の動作が2軸の動作に対応されている。例えば、右操作レバー25Rの前後方向の操作は、ブーム6の操作に対応されている。右操作レバー25Rが前方へ操作されるとブーム6が下がり、後方へ操作されるとブーム6が上がる。前後方向の操作に応じてブーム6の下げ上げの動作が実行される。右操作レバー25Rの左右方向の操作は、バケット8の操作に対応されている。右操作レバー25Rが左側に操作されるとバケット8が掘削し、右側に操作されるとバケット8がダンプする。左右方向の操作に応じてバケット8の掘削又は開放動作が実行される。左操作レバー25Lの前後方向の操作は、アーム7の旋回に対応されている。左操作レバー25Lが前方に操作されるとアーム7がダンプし、後方に操作されるとアーム7が掘削する。左操作レバー25Lの左右方向の操作は、上部旋回体3の旋回に対応されている。左操作レバー25Lが左側に操作されると左旋回し、右側に操作されると右旋回する。
本実施形態において、ブーム6の上げ動作は、ダンプ動作に相当する。ブーム6の下げ動作は、掘削動作に相当する。アーム7の掘削動作は、下げ動作に相当する。アーム7のダンプ動作は、上げ動作に相当する。バケット8の掘削動作は、下げ動作に相当する。バケット8のダンプ動作は、上げ動作に相当する。なお、アーム7の下げ動作を曲げ動作と称してもよい。アーム7の上げ動作を伸長動作と称してもよい。
本実施形態において、操作装置25は、パイロット油圧方式が用いられる。操作装置25には、油圧ポンプ36から、図示しない減圧弁によって所定のパイロット圧力に減圧された作動油がブーム操作、バケット操作、アーム操作及び旋回操作に基づいて供給される。
右操作レバー25Rの前後方向の操作に応じて、パイロット油路450へパイロット油圧が供給可能とされて、オペレータによるブーム6の操作が受け付けられる。右操作レバー25Rの操作量に応じて右操作レバー25Rが備える弁装置が開き、パイロット油路450へ作動油が供給される。また、圧力センサ66は、そのときのパイロット油路450内における作動油の圧力をパイロット圧として検出する。圧力センサ66は、検出したパイロット圧を、ブーム操作量MBとして作業機コントローラ26へ送信する。右操作レバー25Rの前後方向の操作量を、以下、適宜ブーム操作量MBと称する。操作装置25とブームシリンダ10との間のパイロット油路50には、圧力センサ68、制御弁(以下、適宜介入弁と称する)27C及びシャトル弁51が設けられる。介入弁27C及びシャトル弁51については後述する。
右操作レバー25Rの左右方向の操作に応じて、パイロット油路450へパイロット油圧が供給可能とされて、オペレータによるバケット8の操作が受け付けられる。右操作レバー25Rの操作量に応じて右操作レバー25Rが備える弁装置が開き、パイロット油路450に作動油が供給される。また、圧力センサ66は、そのときのパイロット油路450内における作動油の圧力をパイロット圧として検出する。圧力センサ66は、検出したパイロット圧を、バケット操作量MTとして作業機コントローラ26へ送信する。右操作レバー25Rの左右方向の操作量を、以下、適宜バケット操作量MTと称する。
左操作レバー25Lの前後方向の操作に応じて、パイロット油路450へパイロット油圧が供給可能とされて、オペレータによるアーム7の操作が受け付けられる。左操作レバー25Lの操作量に応じて左操作レバー25Lが備える弁装置が開き、パイロット油路450へ作動油が供給される。また、圧力センサ66は、そのときのパイロット油路450内における作動油の圧力をパイロット圧として検出する。圧力計66は、検出したパイロット圧を、アーム操作量MAとして作業機コントローラ26へ送信する。左操作レバー25Lの左右方向の操作量を、以下、適宜アーム操作量MAと称する。
左操作レバー25Lの左右方向の操作に応じて、パイロット油路450へパイロット油圧が供給可能とされて、オペレータによる上部旋回体3の旋回操作が受け付けられる。左操作レバー25Lの操作量に応じて左操作レバー25Lが備える弁装置が開き、パイロット油路450へ作動油が供給される。また、圧力センサ66は、そのときのパイロット油路450内における作動油の圧力をパイロット圧として検出する。圧力センサ66は、検出したパイロット圧を、旋回操作量MRとして作業機コントローラ26へ送信する。左操作レバー25Lの前後方向の操作量を、以下、適宜旋回操作量MRと称する。
右操作レバー25Rが操作されることにより、操作装置25は、右操作レバー25Rの操作量に応じた大きさのパイロット油圧を方向制御弁64に供給する。左操作レバー25Lが操作されることにより、操作装置25は、左操作レバー25Lの操作量に応じた大きさのパイロット油圧を制御弁27に供給する。このパイロット油圧によって、方向制御弁64のスプールが動作する。
パイロット油路450には、制御弁27が設けられている。右操作レバー25R及び左操作レバー25Lの操作量は、パイロット油路450に設置される圧力センサ66によって検出される。圧力センサ66が検出したパイロット油圧は、作業機コントローラ26に入力される。作業機コントローラ26は、入力されたパイロット油圧に応じた、パイロット油路450の制御信号Nを制御弁27に出力して、パイロット油路450を開閉する。
左操作レバー25L及び右操作レバー25Rの操作量が、例えば、ポテンショメータ及びホールIC等によって検出され、作業機コントローラ26は、これらの検出値に基づいて方向制御弁64及び制御弁27を制御することによって、作業機2を制御してもよい。このように、左操作レバー25L及び右操作レバー25Rは、電気方式であってもよい。旋回操作とアーム操作とは入れ替えられてもよい。この場合、左操作レバー25Lの左右方向における操作に応じてアーム7の伸長又は曲げ動作が実行され、左操作レバー25Lの前後方向における操作に応じて上部旋回体3の左右の旋回動作が実行される。
制御システム200は、第1ストロークセンサ16と第2ストロークセンサ17と第3ストロークセンサ18とを有する。例えば、第1ストロークセンサ16はブームシリンダ10に、第2ストロークセンサ17はアームシリンダ11に、第3ストロークセンサ18バケットシリンダ12に、それぞれ設けられる。第1ストロークセンサ16は、ブームシリンダ10のストローク長さLS1を検出する。第1ストロークセンサ16は、ブームシリンダ10の伸長に対応する変位量を検出して、センサコントローラ39に出力する。センサコントローラ39は、第1ストロークセンサ16の変位量に対応するブームシリンダ10のシリンダ長(以下、適宜ブームシリンダ長と称する)を算出する。センサコントローラ39は、第1ストロークセンサ16が検出したブームシリンダ長から、油圧ショベル100のローカル座標系、具体的には車両本体1のローカル座標系における水平面と直交する方向(z軸方向)に対するブーム6の傾斜角θ1を算出して、作業機コントローラ26及び表示コントローラ28に出力する。
第2ストロークセンサ17は、アームシリンダ11のストローク長さLS2を検出する。第2ストロークセンサ17は、アームシリンダ11の伸長に対応する変位量を検出して、センサコントローラ39に出力する。センサコントローラ39は、第2ストロークセンサ17の変位量に対応するアームシリンダ11のシリンダ長(以下、適宜アームシリンダ長と称する)を算出する。
センサコントローラ39は、第2ストロークセンサ17が検出したアームシリンダ長から、ブーム6に対するアーム7の傾斜角θ2を算出して、作業機コントローラ26及び表示コントローラ28に出力する。第3ストロークセンサ18は、バケットシリンダ12のストローク長さLS3を検出する。第3ストロークセンサ18は、バケットシリンダ12の伸長に対応する変位量を検出して、センサコントローラ39に出力する。センサコントローラ39は、第3ストロークセンサ18の変位量に対応するバケットシリンダ12のシリンダ長(以下、適宜バケットシリンダ長と称する)を算出する。
センサコントローラ39は、第3ストロークセンサ18が検出したバケットシリンダ長から、アーム7に対するバケット8が有するバケット8の刃先8Tの傾斜角θ3を算出して、作業機コントローラ26及び表示コントローラ28に出力する。ブーム6、アーム7及びバケット8の傾斜角θ1、傾斜角θ2及び傾斜角θ3は、第1ストロークセンサ16等で計測する以外に、ブーム6に取り付けられてブーム6の傾斜角を計測するロータリーエンコーダと、アーム7に取り付けられてアーム7の傾斜角を計測するロータリーエンコーダと、バケット8に取り付けられてバケット8の傾斜角を計測するロータリーエンコーダとによって取得されてもよい。
作業機コントローラ26は、RAM(Random Access Memory)及びROM(Read Only Memory)等の記憶部26Mと、CPU(Central Processing Unit)等の処理部26Pとを有する。作業機コントローラ26は、図2に示す圧力センサ66の検出値に基づいて、制御弁27及び介入弁27Cを制御する。
図2に示す方向制御弁64は、例えば比例制御弁であり、操作装置25から供給される作動油によって制御される。方向制御弁64は、ブームシリンダ10、アームシリンダ11、バケットシリンダ12及び旋回モータ38等の油圧アクチュエータと、油圧ポンプ36、37との間に配置される。方向制御弁64は、油圧ポンプ36、37からブームシリンダ10、アームシリンダ11、バケットシリンダ12及び旋回モータ38に供給される作動油の流量を制御する。
制御システム200が備える位置検出装置19は、油圧ショベル100の位置を検出する。位置検出装置19は、前述したGNSSアンテナ21、22とを含む。GNSSアンテナ21、22で受信されたGNSS電波に応じた信号が、グローバル座標演算部23に入力される。GNSSアンテナ21は、自身の位置を示す基準位置データP1を測位衛星から受信する。GNSSアンテナ22は、自身の位置を示す基準位置データP2を測位衛星から受信する。GNSSアンテナ21、22は、例えば10Hz周期で基準位置データP1、P2を受信する。基準位置データP1、P2は、GNSSアンテナが設置されている位置の情報である。GNSSアンテナ21、22は、基準位置データP1、P2を受信する毎に、グローバル座標演算部23に出力する。
グローバル座標演算部23は、グローバル座標系で表される2つの基準位置データP1、P2(複数の基準位置データ)を取得する。グローバル座標演算部23は、2つの基準位置データP1、P2に基づいて、上部旋回体3の配置を示す旋回体配置データを生成する。本実施形態において、旋回体配置データには、2つの基準位置データP1、P2の一方の基準位置データPと、2つの基準位置データP1、P2に基づいて生成された旋回体方位データQとが含まれる。旋回体方位データQは、GNSSアンテナ21、22が取得した基準位置データPから決定される方位が、グローバル座標の基準方位(例えば北)に対してなす角に基づいて決定される。旋回体方位データQは、上部旋回体3、すなわち作業機2が向いている方位を示している。グローバル座標演算部23は、例えば10Hzの周波数でGNSSアンテナ21、22から2つの基準位置データP1、P2を取得する毎に、旋回体配置データ、すなわち基準位置データPと旋回体方位データQとを更新して、作業機コントローラ26及び表示コントローラ28に出力する。
IMU24は、上部旋回体3に取り付けられている。IMU24は、上部旋回体3の動作を示す動作データを検出する。IMU24が検出する動作データは、例えば、加速度及び角速度である。本実施形態において、動作データは、図1に示す、上部旋回体3の旋回軸zを中心として上部旋回体3が旋回する旋回角速度ωである。旋回角速度ωは、例えば、IMU24が検出した上部旋回体3の旋回角度を時間で微分することにより求められる。上部旋回体3の旋回角度は、GNSSアンテナ21、22の位置情報から取得されてもよい。
図3Aは、油圧ショベル100の側面図である。図3Bは、油圧ショベル100の背面図である。IMU24は、図3A及び図3Bに示すように、車両本体1の左右方向に対する傾斜角θ4と、車両本体1の前後方向に対する傾斜角θ5と、加速度と、角速度とを検出する。IMU24は、例えば100Hzの周波数で旋回角速度ω、傾斜角θ4及び傾斜角θ5を更新する。IMU24における更新周期は、グローバル座標演算部23における更新周期よりも短いことが好ましい。IMU24が検出した旋回角速度ω、傾斜角θ5は、センサコントローラ39に出力される。センサコントローラ39は、旋回角速度ω及び傾斜角θ5に対してフィルタ処理等を施してから、作業機コントローラ26及び表示コントローラ28に出力する。
表示コントローラ28は、グローバル座標演算部23から旋回体配置データ(基準位置データP及び旋回体方位データQ)を取得する。本実施形態において、表示コントローラ28は、作業機位置データとして、バケット8の刃先8Tの3次元位置を示すバケット刃先位置データSを生成する。そして、表示コントローラ28は、バケット刃先位置データSと、後述する目標施工情報Tとを用いて、掘削対象の目標形状を示す情報としての目標掘削地形データUを生成する。表示コントローラ28は、目標掘削地形データUに基づく表示用の目標掘削地形データUaを導出し、表示用の目標掘削地形データUaに基づいて、表示部29に目標掘削地形43Iを表示させる。
表示部29は、例えば、液晶表示装置等であるが、これに限定されるものではない。本実施形態においては、表示部29に隣接して、スイッチ29Sが設置されている。スイッチ29Sは、後述する掘削制御を実行するか否かを選択するための入力装置である。
作業機コントローラ26は、図1に示す旋回軸zを中心として上部旋回体3が旋回する旋回角速度ωを示す旋回角速度ωをセンサコントローラ39から取得する。また、作業機コントローラ26は、圧力センサ66からブーム操作信号MB、バケット操作信号MT、アーム操作信号MA及び旋回操作信号MRを取得する。作業機コントローラ26は、センサコントローラ39からブーム6の傾斜角度θ1、アーム7の傾斜角度θ2、バケット8の傾斜角度θ3を取得する。
作業機コントローラ26は、表示コントローラ28から、目標掘削地形データUを取得する。作業機コントローラ26は、センサコントローラ39から取得した作業機2の角度からバケット8の刃先8Tの位置(以下、適宜刃先位置と称する)を算出する。作業機コントローラ26は、目標掘削地形データUに沿ってバケット8の刃先8Tが移動するように、操作装置25から入力されたブーム操作量MB、バケット操作量MT及びアーム操作量MAを、目標掘削地形データUとバケット8の刃先8Tとの距離と速度に基づき調整する。作業機コントローラ26は、目標掘削地形データUに沿ってバケット8の刃先8Tが移動するように作業機2を制御するための制御信号Nを生成して、図2に示す制御弁27に出力する。このような処理により、作業機2が目標掘削地形データUに近づく速度は、目標掘削地形データUに対する距離に応じて制限される。
作業機コントローラ26からの制御信号Nに応じて、ブームシリンダ10、アームシリンダ11及びバケットシリンダ12のそれぞれに対して2個ずつ設けられた制御弁27が開閉する。左操作レバー25L又は右操作レバー25Rの操作と制御弁27の開閉指令とに基づき、方向制御弁64のスプールが動作して、ブームシリンダ10、アームシリンダ11及びバケットシリンダ12へ作動油が供給される。
グローバル座標演算部23は、グローバル座標系におけるGNSSアンテナ21、22の基準位置データP1、P2を検出する。グローバル座標系は、油圧ショベル100の作業エリアGDに設置された基準となる、例えば基準杭60の基準位置PGを基準とした、(X、Y、Z)で示される3次元座標系である。図3Aに示すように、基準位置PGは、例えば、作業エリアGDに設置された基準杭60の先端60Tに位置する。本実施形態において、グローバル座標系とは、例えば、GNSSにおける座標系である。
図2に示す表示コントローラ28は、位置検出装置19による検出結果に基づいて、グローバル座標系で見たときのローカル座標系の位置を算出する。ローカル座標系とは、油圧ショベル100を基準とした、(x、y、z)で示される3次元座標系である。本実施形態において、ローカル座標系の基準位置PLは、例えば、上部旋回体3が旋回するためのスイングサークル上に位置する。本実施形態において、例えば、作業機コントローラ26は、次のようにしてグローバル座標系で見たときのローカル座標系の位置を算出する。
センサコントローラ39は、第1ストロークセンサ16が検出したブームシリンダ長から、ローカル座標系における水平面と直交する方向(z軸方向)に対するブーム6の傾斜角θ1を算出する。作業機コントローラ26は、第2ストロークセンサ17が検出したアームシリンダ長から、ブーム6に対するアーム7の傾斜角θ2を算出する。作業機コントローラ26は、第3ストロークセンサ18が検出したバケットシリンダ長から、アーム7に対するバケット8の傾斜角θ3を算出する。
作業機コントローラ26の記憶部26Mは、作業機2のデータ(以下、適宜作業機データという)を記憶している。作業機データは、ブーム6の長さL1、アーム7の長さL2及びバケット8の長さL3を含む。図3Aに示すように、ブーム6の長さL1は、ブームピン13からアームピン14までの長さに相当する。アーム7の長さL2は、アームピン14からバケットピン15までの長さに相当する。バケット8の長さL3は、バケットピン15からバケット8の刃先8Tまでの長さに相当する。刃先8Tは、図1に示す刃8Bの先端である。また、作業機データは、ローカル座標系の基準位置PLに対するブームピン13までの位置情報を含む。
図4は、目標施工面の一例を示す模式図である。図4に示すように、油圧ショベル100が備える作業機2の掘削対象の掘削後における仕上がりの目標となる目標施工情報Tは、三角形ポリゴンによってそれぞれ表現される複数の目標施工面41を含む。図4では複数の目標施工面41のうち1つのみに符号41が付されており、他の目標施工面41の符号は省略されている。作業機コントローラ26は、バケット8が目標掘削地形43Iを侵食することを抑制するために、作業機2が掘削対象に接近する方向の速度が制限速度以下になるように制御する。この制御を、適宜掘削制御という。次に、作業機コントローラ26によって実行される掘削制御について説明する。
<掘削制御について>
図5は、作業機コントローラ26及び表示コントローラ28を示すブロック図である。図6は、表示部に表示される目標掘削地形43Iの一例を示す図である。図7は、目標速度と垂直速度成分と水平速度成分との関係を示す模式図である。図8は、垂直速度成分と水平速度成分との算出方法を示す図である。図9は、垂直速度成分と水平速度成分との算出方法を示す図である。図10は、刃先と目標施工面との間の距離を示す模式図である。図11は、制限速度情報の一例を示すグラフである。図12は、ブームの制限速度の垂直速度成分の算出方法を示す模式図である。図13は、ブームの制限速度の垂直速度成分とブームの制限速度との関係を示す模式図である。図14は、刃先の移動によるブームの制限速度の変化の一例を示す図である。
図4及び図5に示すように、表示コントローラ28は、目標掘削地形データUを生成して作業機コントローラ26に出力する。掘削制御は、例えば、油圧ショベル100のオペレータが、図2に示すスイッチ29Sを用いて掘削制御を実行することを選択した場合に実行される。掘削制御が実行されるにあたって、作業機コントローラ26は、ブーム操作量MB、アーム操作量MA及びバケット操作量MT並びに表示コントローラ28から取得した目標掘削地形データU及びセンサコントローラ39から取得した傾斜角度θ1、θ2、θ3、θ5を用いて、掘削制御に必要なブーム指令信号CBIを生成し、また必要に応じてアーム指令信号及びバケット指令信号を生成し、制御弁27及び介入弁27Cを駆動して作業機2を制御する。
まず、表示コントローラ28について説明する。表示コントローラ28は、目標施工情報格納部28Aと、バケット刃先位置データ生成部28Bと、目標掘削地形データ生成部28Cとを含む。目標施工情報格納部28Aは、作業エリアにおける目標形状を示す情報としての目標施工情報Tを格納している。目標施工情報Tは、掘削対象の目標形状を示す情報としての目標掘削地形データUを生成するために必要とされる座標データ及び角度データを含んでいる。目標施工情報Tは、複数の目標施工面41の位置情報を含む。掘削制御作業機コントローラ26が作業機2を制御したり、表示部29に目標掘削地形データUaを表示させたりするために必要な目標施工情報Tは、例えば、無線通信によって目標施工情報格納部28Aにダウンロードされる。また、必要な目標施工情報Tは、これを保存している端末装置を表示コントローラ28に接続して、目標施工情報格納部28Aにダウンロードされてもよいし、持ち出し可能な記憶装置をコントローラ28に接続して転送してもよい。
バケット刃先位置データ生成部28Bは、グローバル座標演算部23から取得する基準位置データP及び旋回体方位データQに基づいて、上部旋回体3の旋回軸zを通る油圧ショベル100の旋回中心の位置を示す旋回中心位置データXRを生成する。旋回中心位置データXRは、ローカル座標系の基準PLとxy座標が一致する。
バケット刃先位置データ生成部28Bは、旋回中心位置データXRと作業機2の傾斜角θ1、θ2、θ3とに基づいて、バケット8の刃先8Tの現在位置を示すバケット刃先位置データSを生成する。
バケット刃先位置データ生成部28Bは、前述したように、例えば10Hzの周波数で基準位置データPと旋回体方位データQとをグローバル座標演算部23から取得する。したがって、バケット刃先位置データ生成部28Bは、例えば10Hzの周波数でバケット刃先位置データSを更新することができる。バケット刃先位置データ生成部28Bは、更新したバケット刃先位置データSを目標掘削地形データ生成部28Cに出力する。
目標掘削地形データ生成部28Cは、目標施工情報格納部28Aに格納された目標施工情報Tと、バケット刃先位置データ生成部28Bからのバケット刃先位置データSと、を取得する。目標掘削地形データ生成部28Cは、ローカル座標系において刃先8Tの現時点における刃先位置P4を通る垂線と目標施工面41との交点を掘削対象位置44として設定する。掘削対象位置44は、バケット8の刃先位置P4の直下の点である。目標掘削地形データ生成部28Cは、目標施工情報Tとバケット刃先位置データSとに基づいて、図4に示すように、上部旋回体3の前後方向で規定され、かつ掘削対象位置44を通る作業機2の平面42と、複数の目標施工面41で表される目標施工情報Tとの交線43を、目標掘削地形43Iの候補線として取得する。掘削対象位置44は、候補線上の一点である。平面42は、作業機2が動作する平面(作業機動作平面)と平行な平面又は作業機動作平面である。
作業機動作平面は、ブーム6及びアーム7が油圧ショベル100のローカル座標系のz軸と平行な軸周りを回動しない場合、油圧ショベル100のxz平面と平行な平面である。ブーム6及びアーム7の少なくとも一方が油圧ショベル100のローカル座標系のz軸と平行な軸周りを回動する場合、作業機動作平面は、アームが回動する軸、すなわち図1に示すアームピン14の軸線と直交する平面である。以下において、作業機動作平面を、適宜アーム動作平面と称する。
目標掘削地形データ生成部28Cは、目標施工情報Tの掘削対象位置44の前後における単数又は複数の変曲点とその前後の線とを、掘削対象となる目標掘削地形43Iとして決定する。図4に示す例では、2個の変曲点Pv1、Pv2とその前後の線とが目標掘削地形43Iとして決定される。そして、目標掘削地形データ生成部28Cは、掘削対象位置44の前後における単数又は複数の変曲点の位置情報とその前後の線の角度情報とを、掘削対象の目標形状を示す情報である目標掘削地形データUとして生成する。本実施形態において、目標掘削地形43Iは線で規定しているが、例えばバケット8の幅等に基づき、面として規定されていてもよい。このようにして生成された目標掘削地形データUは、複数の目標施工面41の一部の情報を有している。目標掘削地形データ生成部28Cは、生成した目標掘削地形データUを作業機コントローラ26に出力する。本実施形態において、表示コントローラ28と作業機コントローラとは直接信号のやり取りをするが、例えば、CAN(Controller Area Network)のような車内信号線を介して信号をやり取りしてもよい。
本実施形態において、目標掘削地形データUは、作業機2が動作する作業機動作平面としての平面42と、目標形状を示す少なくとも1つの目標施工面(第1の目標施工面)41とが交差する部分における情報である。平面42は、図3A、図3Bに示すローカル座標系(x、y、z)におけるxz平面である。平面42によって、複数の目標施工面41を切り出すことによって得られた目標掘削地形データUの他に、平面42と交差(又は直交)し、かつ鉛直方向と平行な平面と、目標形状を示す少なくとも1つの目標施工面41とが交差する部分における情報もある。この情報は、作業機2の幅方向(ローカル座標系におけるy方向)における掘削対象の目標形状を示す情報である。この情報を、適宜幅方向目標掘削地形データUwと称する。幅方向目標掘削地形データUwによって、幅方向の目標掘削地形46Iが生成される。幅方向目標掘削地形データUw及び目標掘削地形46Iの詳細は後述する。また、平面42によって、複数の目標施工面41を切り出すことによって得られた目標掘削地形データUを、適宜前後方向目標掘削地形データUと称する。
表示コントローラ28は、必要に応じて、第1目標掘削地形情報としての幅方向目標掘削地形データUw又は第2目標掘削地形情報としての前後方向目標掘削地形データUに基づいて表示部29に目標掘削地形43Iを表示させる。表示用の情報としては、表示用の目標掘削地形データUaが用いられる。表示用の目標掘削地形データUaに基づき、例えば、図5に示すような、バケット8の掘削対象として設定された目標掘削地形43Iと刃先8Tとの位置関係を示す画像が、表示部29に表示される。表示コントローラ28は、表示用の目標掘削地形データUaに基づいて表示部29に目標掘削地形(表示用の目標掘削地形)43Iを表示する。作業機コントローラ26に出力された前後方向目標掘削地形データU及び幅方向目標掘削地形データUwは掘削制御に用いられる。掘削制御に用いられる目標掘削地形データU及び幅方向目標掘削地形データUwを、適宜作業用目標掘削地形データと称する。
目標掘削地形データ生成部28Cは、前述したように、例えば10Hzの周波数でバケット刃先位置データSをバケット刃先位置データ生成部28Bから取得する。したがって、目標掘削地形データ生成部28Cは、例えば10Hzの周波数で前後方向目標掘削地形データU及び幅方向目標掘削地形データUwを更新し、作業機コントローラ26に出力することができる。次に、作業機コントローラ26について説明する。
作業機コントローラ26は、目標速度決定部52と、距離取得部53と、制限速度決定部54と、作業機制御部57と、掘削制御可否判定部(以下、適宜制御可否判定部と称する)58とを有する。作業機コントローラ26は、前述した前後方向目標掘削地形データU又は幅方向目標掘削地形データUwに基づく目標掘削地形43Iを用いて掘削制御を実行する。このように、本実施形態では、表示に用いられる目標掘削地形43Iと、掘削制御に用いられる目標掘削地形43Iとがある。前者を表示用目標掘削地形と称し、後者を掘削制御用目標掘削地形と称する。
本実施形態において、目標速度決定部52、距離取得部53、制限速度決定部54、作業機制御部57及び制御化批判底部58の機能は、図2に示す処理部26Pが実現する。次に、作業機コントローラ26による掘削制御について説明する。この掘削制御は、作業機2の前後方向における掘削制御の例であるが、作業機2の幅方向においても掘削制御は可能である。作業機2の幅方向における掘削制御については後述する。
目標速度決定部52は、ブーム目標速度Vc_bmと、アーム目標速度Vc_amと、バケット目標速度Vc_bktとを決定する。ブーム目標速度Vc_bmは、ブームシリンダ10のみが駆動されるときの刃先8Tの速度である。アーム目標速度Vc_amは、アームシリンダ11のみが駆動されるときの刃先8Tの速度である。バケット目標速度Vc_bktは、バケットシリンダ12のみが駆動されるときの刃先8Tの速度である。ブーム目標速度Vc_bmは、ブーム操作量MBに応じて算出される。アーム目標速度Vc_amは、アーム操作量MAに応じて算出される。バケット目標速度Vc_bktは、バケット操作量MTに応じて算出される。
記憶部26Mは、ブーム操作量MBとブーム目標速度Vc_bmとの関係を規定する目標速度情報を記憶している。目標速度決定部52は、目標速度情報を参照することにより、ブーム操作量MBに対応するブーム目標速度Vc_bmを決定する。目標速度情報は、例えば、ブーム操作量MBに対するブーム目標速度Vc_bmの大きさが記述されたグラフである。目標速度情報は、テーブル又は数式等の形態でもよい。目標速度情報は、アーム操作量MAとアーム目標速度Vc_amとの関係を規定する情報を含む。目標速度情報は、バケット操作量MTとバケット目標速度Vc_bktとの関係を規定する情報を含む。目標速度決定部52は、目標速度情報を参照することにより、アーム操作量MAに対応するアーム目標速度Vc_amを決定する。目標速度決定部52は、目標速度情報を参照することにより、バケット操作量MTに対応するバケット目標速度Vc_bktを決定する。目標速度決定部52は、図7に示すように、ブーム目標速度Vc_bmを、目標掘削地形43I(目標掘削地形データU)に垂直な方向の速度成分(以下、適宜垂直速度成分と称する)Vcy_bm及び目標掘削地形43I(目標掘削地形データU)に平行な方向の速度成分(以下、適宜水平速度成分と称する)Vcx_bmに変換する。
例えば、まず、目標速度決定部52は、傾斜角θ5をセンサコントローラ39から取得し、グローバル座標系の垂直軸に対して目標掘削地形43Iと直交する方向における傾きとを求める。そして、目標速度決定部52は、これらの傾きからローカル座標系の垂直軸と目標掘削地形43Iに直交する方向との傾きを表す角度β2(図8参照)を求める。
次に、目標速度決定部52は、図8に示すように、ローカル座標系の垂直軸とブーム目標速度Vc_bmの方向とのなす角度β2とから、三角関数によりブーム目標速度Vc_bmをローカル座標系の垂直軸方向の速度成分VL1_bmと水平軸方向の速度成分VL2_bmとに変換する。そして、図9に示すように、目標速度決定部52は、前述したローカル座標系の垂直軸と目標掘削地形43Iに直交する方向との傾きβ1から、三角関数により、ローカル座標系の垂直軸方向における速度成分VL1_bmと水平軸方向における速度成分VL2_bmとを、前述した目標掘削地形43Iに対する垂直速度成分Vcy_bm及び水平速度成分Vcx_bmとに変換する。同様に、目標速度決定部52は、アーム目標速度Vc_amを、ローカル座標系の垂直軸方向における垂直速度成分Vcy_am及び水平速度成分Vcx_amに変換する。目標速度決定部52は、バケット目標速度Vc_bktを、ローカル座標系の垂直軸方向における垂直速度成分Vcy_bkt及び水平速度成分Vcx_bktに変換する。
距離取得部53は、図10に示すように、バケット8の刃先8Tと目標掘削地形43Iとの間の距離dを取得する。詳細には、距離取得部53は、前述したように取得した刃先8Tの位置情報及び目標掘削地形43Iの位置を示す目標掘削地形データU等から、バケット8の刃先8Tと目標掘削地形43Iとの間の最短となる距離dを算出する。本実施形態では、バケット8の刃先8Tと目標掘削地形43Iとの間の最短となる距離dに基づいて、掘削制御が実行される。
制限速度決定部54は、バケット8の刃先8Tと目標掘削地形43Iとの間の距離dに基づいて、図1に示す作業機2全体の制限速度Vcy_lmtを算出する。作業機2全体の制限速度Vcy_lmtは、バケット8の刃先8Tが目標掘削地形43Iに接近する方向において許容できる刃先8Tの移動速度である。図2に示す記憶部26Mは、距離dと制限速度Vcy_lmtとの関係を規定する制限速度情報を記憶している。
図11は、制限速度情報の一例を示している。図11中の横軸は距離d、縦軸は制限速度Vcyである。本実施形態において、刃先8Tが目標掘削地形43Iの外方、すなわち油圧ショベル100の作業機2側に位置しているときの距離dは正の値であり、刃先8Tが目標掘削地形43Iの内方、すなわち目標掘削地形43Iよりも掘削対象の内部側に位置しているときの距離dは負の値である。これは、例えば、図10に図示されるように、刃先8Tが目標掘削地形43Iの上方に位置しているときの距離dは正の値であり、刃先8Tが目標掘削地形43Iの下方に位置しているときの距離dは負の値であるとも言える。また、刃先8Tが目標掘削地形43Iに対して侵食しない位置にあるときの距離dは正の値であり、刃先8Tが目標掘削地形43Iに対して侵食する位置にあるときの距離dは負の値であるとも言える。刃先8Tが目標掘削地形43I上に位置しているとき、すなわち刃先8Tが目標掘削地形43Iと接しているときの距離dは0である。
本実施形態において、刃先8Tが目標掘削地形43Iの内方から外方に向かうときの速度を正の値とし、刃先8Tが目標掘削地形43Iの外方から内方に向かうときの速度を負の値とする。すなわち、刃先8Tが目標掘削地形43Iの上方に向かうときの速度を正の値とし、刃先8Tが下方に向かうときの速度を負の値とする。
制限速度情報において、距離dがd1とd2との間であるときの制限速度Vcy_lmtの傾きは、距離dがd1以上又はd2以下のときの傾きより小さい。d1は0より大きい。d2は0より小さい。目標掘削地形43I付近の操作においては制限速度をより詳細に設定するために、距離dがd1とd2との間であるときの傾きを、距離dがd1以上又はd2以下であるときの傾きよりも小さくする。距離dがd1以上のとき、制限速度Vcy_lmtは負の値であり、距離dが大きくなるほど制限速度Vcy_lmtは小さくなる。つまり、距離dがd1以上のとき、目標掘削地形43Iより上方において刃先8Tが目標掘削地形43Iから遠いほど、目標掘削地形43Iの下方へ向かう速度が大きくなり、制限速度Vcy_lmtの絶対値は大きくなる。距離dが0以下のとき、制限速度Vcy_lmtは正の値であり、距離dが小さくなるほど制限速度Vcy_lmtは大きくなる。つまり、バケット8の刃先8Tが目標掘削地形43Iから遠ざかる距離dが0以下のとき、目標掘削地形43Iより下方において刃先8Tが目標掘削地形43Iから遠いほど、目標掘削地形43Iの上方へ向かう速度が大きくなり、制限速度Vcy_lmtの絶対値は大きくなる。
距離dが第1所定値dth1以上では、制限速度Vcy_lmtは、Vminとなる。第1所定値dth1は正の値であり、d1より大きい。Vminは、目標速度の最小値よりも小さい。つまり、距離dが第1所定値dth1以上では、作業機2の動作の制限が行われない。したがって、刃先8Tが目標掘削地形43Iの上方において目標掘削地形43Iから大きく離れているときには、作業機2の動作の制限、すなわち掘削制御が行われない。距離dが第1所定値dth1より小さいときに、作業機2の動作の制限が行われる。詳細には、後述するように、距離dが第1所定値dth1より小さいときに、ブーム6の動作の制限が行われる。
制限速度決定部54は、作業機2全体の制限速度Vcy_lmtとアーム目標速度Vc_amとバケット目標速度Vc_bktとからブーム6の制限速度の垂直速度成分(以下、適宜ブーム6の制限垂直速度成分と称する)Vcy_bm_lmtを算出する。制限速度決定部54は、図12に示すように、作業機2全体の制限速度Vcy_lmtから、アーム目標速度の垂直速度成分Vcy_amと、バケット目標速度の垂直速度成分Vcy_bktとを減算することにより、ブーム6の制限垂直速度成分Vcy_bm_lmtを算出する。
制限速度決定部54は、図13に示すように、ブーム6の制限垂直速度成分Vcy_bm_lmtを、ブーム6の制限速度(ブーム制限速度)Vc_bm_lmtに変換する。制限速度決定部54は、前述したブーム6の傾斜角θ1、アーム7の傾斜角θ2、バケット8の傾斜角θ3、GNSSアンテナ21、22の基準位置データ及び目標掘削地形データU等から、目標掘削地形43Iに垂直な方向とブーム制限速度Vc_bm_lmtの方向との間の関係を求め、ブーム6の制限垂直速度成分Vcy_bm_lmtを、ブーム制限速度Vc_bm_lmtに変換する。この場合の演算は、前述したブーム目標速度Vc_bmから目標掘削地形43Iに垂直な方向の垂直速度成分Vcy_bmを求めた演算と逆の手順により行われる。
図2に示すシャトル弁51は、ブーム6の操作に基づいて生成されたパイロット圧力と、ブーム介入指令CBIに基づいて介入弁27Cが生成したパイロット圧力とのうち大きい方を選択して方向制御弁64に供給する。ブーム介入指令CBIに基づくパイロット圧力がブーム6の操作に基づいて生成されたパイロット圧力よりも大きい場合、ブーム介入指令CBIに基づくパイロット圧力によってブームシリンダ10に対応する方向制御弁64が動作する。その結果、ブーム制限速度Vc_bm_lmtに基づくブーム6の駆動が実現される。
作業機制御部57は、作業機2を制御する。作業機制御部57は、アーム指令信号とブーム指令信号とブーム介入指令CBIとバケット指令信号とを図2に示す制御弁27及び介入弁27Cに出力することによって、ブームシリンダ10とアームシリンダ11とバケットシリンダ12とを制御する。アーム指令信号とブーム指令信号とブーム介入指令CBIとバケット指令信号とは、それぞれブーム指令速度とアーム指令速度とバケット指令速度とに応じた電流値を有する。
ブーム6の上げ操作に基づいて生成されたパイロット圧力がブーム介入指令CBIに基づくパイロット圧力よりも大きい場合、シャトル弁51がレバー操作に基づくパイロット圧を選択する。ブーム6の操作に基づきシャトル弁51によって選択されたパイロット圧力によってブームシリンダ10に対応する方向制御弁64が動作する。すなわち、ブーム6は、ブーム目標速度Vc_bmに基づいて駆動されるので、ブーム制限速度Vc_bm_lmtに基づいては駆動されない。
ブーム6の操作に基づいて生成されたパイロット圧力がブーム介入指令CBIに基づくパイロット圧力よりも大きい場合、作業機制御部57は、ブーム目標速度Vc_bm、アーム目標速度Vc_am及びバケット目標速度Vc_bktのそれぞれを、ブーム指令速度、アーム指令速度及びバケット指令速度として選択する。作業機制御部57は、ブーム目標速度Vc_bm、アーム目標速度Vc_am及びバケット目標速度Vc_bktに応じてブームシリンダ10、アームシリンダ11及びバケットシリンダ12の速度(シリンダ速度)を決定する。そして、作業機制御部57は、決定したシリンダ速度に基づいて制御弁27を制御することにより、ブームシリンダ10、アームシリンダ11及びバケットシリンダ12を動作させる。
このように、通常運転時において、作業機制御部57は、ブーム操作量MBとアーム操作量MAとバケット操作量MTとに応じて、ブームシリンダ10とアームシリンダ11とバケットシリンダ12とを動作させる。したがって、ブームシリンダ10はブーム目標速度Vc_bmで動作し、アームシリンダ11はアーム目標速度Vc_amで動作し、バケットシリンダ12はバケット目標速度Vc_bktで動作する。
ブーム介入指令CBIに基づくパイロット圧力がブーム6の操作に基づいて生成されたパイロット圧力よりも大きい場合、介入の指令に基づく介入弁27Cから出力されたパイロット圧をシャトル弁51が選択する。その結果、ブーム6は、ブーム制限速度Vc_bm_lmtで動作するとともに、アーム7は、アーム目標速度Vc_amで動作する。また、バケット8は、バケット目標速度Vc_bktで動作する。
前述したように、作業機2全体の制限速度Vcy_lmtから、アーム目標速度の垂直速度成分Vcy_amとバケット目標速度の垂直速度成分Vcy_bktとを減算することにより、ブーム6の制限垂直速度成分Vcy_bm_lmtが算出される。したがって、作業機2全体の制限速度Vcy_lmtが、アーム目標速度の垂直速度成分Vcy_amとバケット目標速度の垂直速度成分Vcy_bktとの和よりも小さいときには、ブーム6の制限垂直速度成分Vcy_bm_lmtは、ブームが上昇する負の値となる。
したがって、ブーム制限速度Vc_bm_lmtは、負の値となる。この場合、作業機制御部57は、ブーム6を下降させるが、ブーム目標速度Vc_bmよりも減速させる。このため、オペレータの違和感を小さく抑えながらバケット8が目標掘削地形43Iを侵食すること抑制することができる。
作業機2全体の制限速度Vcy_lmtが、アーム目標速度の垂直速度成分Vcy_amとバケット目標速度の垂直速度成分Vcy_bktとの和よりも大きいときには、ブーム6の制限垂直速度成分Vcy_bm_lmtは、正の値となる。したがって、ブーム制限速度Vc_bm_lmtは、正の値となる。この場合、操作装置25がブーム6を下降させる方向に操作されていても、図2に示す介入弁27Cからの指令信号に基づき、ブーム6が上昇する。このため、目標掘削地形43Iの侵食の拡大を迅速に抑えることができる。
刃先8Tが目標掘削地形43Iより上方に位置しているときには、刃先8Tが目標掘削地形43Iに近づくほど、ブーム6の制限垂直速度成分Vcy_bm_lmtの絶対値が小さくなるとともに、目標掘削地形43Iに平行な方向へのブーム6の制限速度の速度成分(以下、適宜制限水平速度成分と称する)Vcx_bm_lmtの絶対値も小さくなる。したがって、刃先8Tが目標掘削地形43Iより上方に位置しているときには、刃先8Tが目標掘削地形43Iに近づくほど、ブーム6の目標掘削地形43Iに垂直な方向への速度と、ブーム6の目標掘削地形43Iに平行な方向への速度とがともに減速される。油圧ショベルのオペレータによって左操作レバー25L及び右操作レバー25Rが同時に操作されることにより、ブーム6とアーム7とバケット8とが同時に動作する。このとき、ブーム6とアーム7とバケット8との各目標速度Vc_bm、Vc_am、Vc_bktが入力されたとして前述した制御を説明すると次の通りである。
図14は、目標掘削地形43Iとバケット8の刃先8Tとの間の距離dが第1所定値dth1より小さく、バケット8の刃先が位置Pn1から位置Pn2に移動する場合のブーム6の制限速度の変化の一例を示している。位置Pn2での刃先8Tと目標掘削地形43Iとの間の距離は、位置Pn1での刃先8Tと目標掘削地形43Iとの間の距離よりも小さい。このため、位置Pn2でのブーム6の制限垂直速度成分Vcy_bm_lmt2は、位置Pn1でのブーム6の制限垂直速度成分Vcy_bm_lmt1よりも小さい。したがって、位置Pn2でのブーム制限速度Vc_bm_lmt2は、位置Pn1でのブーム制限速度Vc_bm_lmt1よりも小さくなる。また、位置Pn2でのブーム6の制限水平速度成分Vcx_bm_lmt2は、位置Pn1でのブーム6の制限水平速度成分Vcx_bm_lmt1よりも小さくなる。ただし、このとき、アーム目標速度Vc_am及びバケット目標速度Vc_bktに対しては、制限は行われない。このため、アーム目標速度の垂直速度成分Vcy_am及び水平速度成分Vcx_amと、バケット目標速度の垂直速度成分Vcy_bkt及び水平速度成分Vcx_bktに対しては、制限は行われない。
前述したように、アーム7に対して制限を行わないことにより、オペレータの掘削意思に対応するアーム操作量の変化は、バケット8の刃先8Tの速度変化として反映される。このため、本実施形態は、目標掘削地形43Iの侵食の拡大を抑制しながらオペレータの掘削時の操作における違和感を抑えることができる。
図5に示す制御可否判定部58は、横方向目標掘削地形データUwに基づいて、掘削制御を実行するか否かを判定する。制御可否判定部58は、例えば、バケット8の直下における横方向目標掘削地形データUwが水平面に対して所定の角度以上である場合には、実行中の掘削制御を停止する。制御可否判定部58が実行する処理については後述する。
刃先8Tの刃先位置P4は、GNSSに限らず、他の測位手段によって測位されもよい。したがって、刃先8Tと目標掘削地形43Iとの距離dは、GNSSに限らず、他の測位手段によって測位されてもよい。バケット制限速度の絶対値は、バケット目標速度の絶対値よりも小さい。バケット制限速度は、例えば前述したアーム制限速度と同様の手法で算出されてもよい。なお、アーム7の制限とともにバケット8の制限が行われてもよい。次に、図2に示す油圧システム300の詳細及び掘削制御時における油圧システム300の動作を説明する。
図15は、油圧ショベル100が備える油圧システム300の詳細な構造を示す図である。図15に示すように、油圧システム300は、ブームシリンダ10、アームシリンダ11及びバケットシリンダ12を含む油圧シリンダ60を備える。油圧シリンダ60は、図2に示す油圧ポンプ36、37から供給された作動油によって作動する。
本実施形態においては、作動油が流れる方向を制御する方向制御弁64が設けられる。方向制御弁64は、ブームシリンダ10、アームシリンダ11及びバケットシリンダ12のそれぞれに配置される。以下において、ブームシリンダ10、アームシリンダ11及びバケットシリンダ12を区別しないときには、油圧シリンダ60と称する。方向制御弁64は、ロッド状のスプール64Sを動かして作動油が流れる方向を切り替えるスプール方式である。スプール64Sは、図2に示す操作装置25から供給された作動油パイロット油により移動する。方向制御弁64は、スプールの移動により油圧シリンダ60に作動油(以下、適宜パイロット油と称する)を供給して油圧シリンダ60を動作させる。
図2に示す油圧ポンプ36、37から供給された作動油は、方向制御弁64を介して、油圧シリンダ60に供給される。スプール64Sが軸方向に移動することにより、油圧シリンダ60のキャップ側油室48Rに対する作動油の供給と、ロッド側油室47Rに対する作動油の供給とが切り替わる。また、スプール64Sが軸方向に移動することにより、油圧シリンダ60に対する作動油の供給量(単位時間当たりの供給量)が調整される。油圧シリンダ60に対する作動油の供給量が調整されることにより、油圧シリンダ60のシリンダ速度が調整される。後述するブームシリンダ10に作動油を供給する方向制御弁640及びアームシリンダ11に作動油を供給する方向制御弁641には、スプール64Sの移動量(移動距離)を検出するスプールストロークセンサ65設けられている。
方向制御弁64の動作は、操作装置25によって調整される。油圧ポンプ36から送出され、減圧弁によって減圧された作動油がパイロット油として操作装置25に供給される。油圧ポンプ36とは異なるパイロット油圧ポンプから送出されたパイロット油が操作装置25に供給されてもよい。操作装置25は、各操作レバーの操作に基づいてパイロット油圧が調整される。そのパイロット油圧によって、方向制御弁64が駆動される。操作装置25によりパイロット油圧が調整されることによって、軸方向に関するスプール64Sの移動量が調整される。
方向制御弁64は、ブームシリンダ10、アームシリンダ11及びバケットシリンダ12のそれぞれに設けられる。以下の説明において、ブームシリンダ10に接続される方向制御弁64を適宜、方向制御弁640、と称する。アームシリンダ11に接続される方向制御弁64を適宜、方向制御弁641、と称する。バケットシリンダ12に接続される方向制御弁64を適宜、方向制御弁642、と称する。
操作装置25と方向制御弁64とは、パイロット油路450を介して接続される。方向制御弁64のスプール64Sを移動するためのパイロット油は、パイロット油路450を流れる。本実施形態において、パイロット油路450に、制御弁27、圧力センサ66及び圧力センサ67が配置されている。
方向制御弁64に、パイロット油路450が接続される。パイロット油路450を介して、パイロット油が方向制御弁64に供給される。方向制御弁64は、第1受圧室及び第2受圧室を有する。パイロット油路450は、第1受圧室と第2受圧室とに接続される。後述するパイロット油路4520B、4521B、4522Bを介して方向制御弁64の第1受圧室にパイロット油が供給されると、そのパイロット油圧に応じてスプール64Sが移動し、方向制御弁64を介して油圧シリンダ60のキャップ側油室48Rに作動油が供給される。キャップ側油圧室48Rに対する作動油の供給量は、操作装置25の操作量(スプール64Sの移動量)により調整される。
後述するパイロット油路4520A、4521A、4522Aを介して方向制御弁64の第2受圧室にパイロット油が供給されると、そのパイロット油圧に応じてスプールが移動し、方向制御弁64を介して油圧シリンダ60のロッド側油室47Rに作動油が供給される。ロッド側油圧室47Rに対する作動油の供給量は、操作装置25の操作量(スプール64Sの移動量)により調整される。
すなわち、操作装置25によりパイロット油圧が調整されたパイロット油が方向制御弁64に供給されることにより、スプール64Sは軸方向に関して一方側に移動する。操作装置25によりパイロット油圧が調整されたパイロット油が方向制御弁64に供給されることにより、スプール64Sは軸方向に関して他方側に移動する。その結果、軸方向に関するスプール64Sの位置が調整される。
以下の説明において、ブームシリンダ10に対して作動油を供給する方向制御弁640に接続されるパイロット油路450を適宜、ブーム調整用油路4520A、4520B、と称する。アームシリンダ11に対する作動油の供給を行う方向制御弁641に接続されるパイロット油路450を適宜、アーム調整用油路4521A、4521B、と称する。バケットシリンダ12に対する作動油の供給を行う方向制御弁642に接続されるパイロット油路450を適宜、バケット調整用油路4522A、4522B、と称する。
以下の説明において、ブーム調整用油路4520Aに接続されるパイロット油路450を適宜、ブーム操作用油路4510A、と称し、ブーム調整用油路4520Bに接続されるパイロット油路450を適宜、ブーム操作用油路4510B、と称する。アーム調整用油路4521Aに接続されるパイロット油路450を適宜、アーム操作用油路4511A、と称し、アーム調整用油路4521Bに接続されるパイロット油路450を適宜、アーム操作用油路4511B、と称する。バケット調整用油路4522Aに接続されるパイロット油路450を適宜、バケット操作用油路4512A、と称し、バケット調整用油路4522Bに接続されるパイロット油路450を適宜、バケット操作用油路4512B、と称する。
ブーム操作用油路(4510A、4510B)及びブーム調整用油路(4520A、4520B)は、パイロット油圧方式の操作装置25と接続される。ブーム操作用油路(4510A、4510B)に、操作装置25の操作量に応じて圧力が調整されたパイロット油が流れる。アーム操作用油路(4511A、4511B)及びアーム調整用油路(4521A、4521B)は、パイロット油圧方式の操作装置25と接続される。アーム操作用油路(4511A、4511B)に、操作装置25の操作量に応じて圧力が調整されたパイロット油が流れる。バケット操作用油路(4512A、4512B)及びバケット調整用油路(4522A、4522B)は、パイロット油圧方式の操作装置25と接続される。バケット操作用油路(4512A、4512B)に、操作装置25の操作量に応じて圧力が調整されたパイロット油が流れる。
ブーム操作用油路4510A、ブーム操作用油路4510B、ブーム調整用油路4520A及びブーム調整用油路4520Bは、ブーム6を動作させるためのパイロット油が流れるブーム用油路である。アーム操作用油路4511A、アーム操作用油路4511B、アーム調整用油路4521A及びアーム調整用油路4521Bは、アーム7を動作させるためのパイロット油が流れるアーム用油路である。バケット操作用油路4512A、バケット操作用油路4512B、バケット調整用油路4522A及びバケット調整用油路4522Bは、バケット8を動作させるためのパイロット油が流れるバケット用油路である。
前述したように、操作装置25の操作により、ブーム6は、下げ動作及び上げ動作の2種類の動作を実行する。ブーム6の下げ動作が実行されるように操作装置25が操作されることにより、ブームシリンダ10に接続された方向制御弁640に、ブーム操作用油路4510A及びブーム調整用油路4520Aを介して、パイロット油が供給される。方向制御弁640はパイロット油圧に基づいて作動する。その結果、油圧ポンプ36、37からの作動油がブームシリンダ10に供給され、ブーム6の下げ動作が実行される。
ブーム6の上げ動作が実行されるように操作装置25が操作されることにより、ブームシリンダ10に接続された方向制御弁640に、ブーム操作用油路4510B及びブーム調整用油路4520Bを介して、パイロット油が供給される。方向制御弁640はパイロット油圧に基づいて作動する。その結果、油圧ポンプ36、37からの作動油がブームシリンダ10に供給され、ブーム6の上げ動作が実行される。
すなわち、本実施形態において、ブーム操作用油路4510A及びブーム調整用油路4520Aは、方向制御弁640の第2受圧室と接続され、ブーム6を下げ動作させるためのパイロット油が流れるブーム下げ用油路である。ブーム操作用油路4510B及びブーム調整用油路4520Bは、方向制御弁640の第1受圧室と接続され、ブーム6を上げ動作させるためのパイロット油が流れるブーム上げ用油路である。
また、操作装置25の操作により、アーム7は、下げ動作及び上げ動作の2種類の動作を実行する。アーム7の上げ動作が実行されるように操作装置25が操作されることにより、アームシリンダ11に接続された方向制御弁641に、アーム操作用油路4511A及びアーム調整用油路4521Aを介して、パイロット油が供給される。方向制御弁641はパイロット油圧に基づいて作動する。その結果、油圧ポンプ36、37からの作動油がアームシリンダ11に供給され、アーム7の上げ動作が実行される。
アーム7の下げ動作が実行されるように操作装置25が操作されることにより、アームシリンダ11に接続された方向制御弁641に、アーム操作用油路4511B及びアーム調整用油路4521Bを介して、パイロット油が供給される。方向制御弁641はパイロット油圧に基づいて作動する。その結果、油圧ポンプ36、37からの作動油がアームシリンダ11に供給され、アーム7の下げ動作が実行される。
すなわち、本実施形態において、アーム操作用油路4511A及びアーム調整用油路4521Aは、方向制御弁641の第2受圧室と接続され、アーム7を上げ動作させるためのパイロット油が流れるアーム上げ用油路である。アーム操作用油路4511B及びアーム調整用油路4521Bは、方向制御弁641の第1受圧室と接続され、アーム7を下げ動作させるためのパイロット油が流れるアーム下げ用油路である。
操作装置25の操作により、バケット8は、下げ動作及び上げ動作の2種類の動作を実行する。バケット8の上げ動作が実行されるように操作装置25が操作されることにより、バケットシリンダ12に接続された方向制御弁642に、バケット操作用油路4512A及びバケット調整用油路4522Aを介して、パイロット油が供給される。方向制御弁642はパイロット油圧に基づいて作動する。その結果、油圧ポンプ36、37からの作動油がバケットシリンダ12に供給され、バケット8の上げ動作が実行される。
バケット8の下げ動作が実行されるように操作装置25が操作されることにより、バケットシリンダ12に接続された方向制御弁642に、バケット操作用油路4512B及びバケット調整用油路4522Bを介して、パイロット油が供給される。方向制御弁642はパイロット油圧に基づいて作動する。その結果、油圧ポンプ36、37からの作動油がバケットシリンダ12に供給され、バケット8の下げ動作が実行される。
すなわち、本実施形態において、バケット操作用油路4512A及びバケット調整用油路4522Aは、方向制御弁642の第2受圧室と接続され、バケット8を上げ動作させるためのパイロット油が流れるバケット上げ用油路である。バケット操作用油路4512B及びバケット調整用油路4522Bは、方向制御弁642の第1受圧室と接続され、バケット8を下げ動作させるためのパイロット油が流れるバケット下げ用油路である。
制御弁27は、作業機コントローラ26からの制御信号(電流)に基づいて、パイロット油圧を調整する。制御弁27は、例えば、電磁比例制御弁であり、作業機コントローラ26からの制御信号に基づいて制御される。制御弁27は、制御弁27Aと、制御弁27Bとを含む。制御弁27Bは、方向制御弁64の第1受圧室に供給されるパイロット油のパイロット油圧を調整して、方向制御弁64を介して油圧シリンダ60のキャップ側油室48Rに供給される作動油の量を調整する。制御弁27Aは、方向制御弁64の第2受圧室に供給されるパイロット油のパイロット油圧を調整して、方向制御弁64を介して油圧シリンダ60のロッド側油室47Rに供給される作動油の量を調整する。
制御弁27の両側に、パイロット油圧を検出する圧力センサ66及び圧力センサ67が設けられる。本実施形態において、圧力センサ66は、パイロット油路451において操作装置25と制御弁27との間に配置される。圧力センサ67は、パイロット油路452において制御弁27と方向制御弁64との間に配置される。圧力センサ66は、制御弁27によって調整される前のパイロット油圧を検出可能である。圧力センサ67は、制御弁27によって調整されたパイロット油圧を検出可能である。圧力センサ66は、操作装置25の操作によって調整されるパイロット油圧を検出可能である。圧力センサ66及び圧力センサ67の検出結果は、作業機コントローラ26に出力される。
以下の説明において、ブームシリンダ10に対する作動油の供給を行う方向制御弁640に対するパイロット油圧を調整可能な制御弁27を適宜、ブーム用減圧弁270A、270B、と称する。ブーム用減圧弁270A、270Bは、ブーム操作用油路に配置される。以下の説明において、アームシリンダ11に対する作動油の供給を行う方向制御弁641に対するパイロット油圧を調整可能な制御弁27を適宜、アーム用減圧弁271A、271B、と称する。アーム用減圧弁271A、271Bは、アーム操作用油路に配置される。以下の説明において、バケットシリンダ12に対する作動油の供給を行う方向制御弁642に対するパイロット油圧を調整可能な制御弁27を適宜、バケット用減圧弁272、と称する。バケット用減圧弁272A、272Bは、バケット操作用油路に配置される。
以下の説明において、ブームシリンダ10に対する作動油の供給を行う方向制御弁640に接続されるパイロット油路451のパイロット油圧を検出する圧力センサ66を適宜、ブーム用圧力センサ660B、と称し、方向制御弁640に接続されるパイロット油路452のパイロット油圧を検出する圧力センサ67を適宜、ブーム用圧力センサ670A、と称する。
また、以下の説明において、ブーム操作用油路4510Aに配置されるブーム用圧力センサ660を適宜、ブーム用圧力センサ660A、と称し、ブーム操作用油路4510Bに配置されるブーム用圧力センサ660を適宜、ブーム用圧力センサ660B、と称する。また、ブーム調整用油路4520Aに配置されるブーム用圧力センサ670を適宜、ブーム用圧力センサ670A、と称し、ブーム調整用油路4520Bに配置されるブーム用圧力センサ670を適宜、ブーム用圧力センサ670B、と称する。
以下の説明において、アームシリンダ11に対する作動油の供給を行う方向制御弁641に接続されるパイロット油路451のパイロット油圧を検出する圧力センサ66を適宜、アーム用圧力センサ661、と称し、方向制御弁641に接続されるパイロット油路452のパイロット油圧を検出する圧力センサ67を適宜、アーム用圧力センサ671、と称する。
また、以下の説明において、アーム操作用油路4511Aに配置されるアーム用圧力センサ661を適宜、アーム用圧力センサ661A、と称し、アーム操作用油路4511Bに配置されるアーム用圧力センサ661を適宜、アーム用圧力センサ661B、と称する。また、アーム調整用油路4521Aに配置されるアーム用圧力センサ671を適宜、アーム用圧力センサ671A、と称し、アーム調整用油路4521Bに配置されるアーム用圧力センサ671を適宜、アーム用圧力センサ671B、と称する。
以下の説明において、バケットシリンダ12に対する作動油の供給を行う方向制御弁642に接続されるパイロット油路451のパイロット油圧を検出する圧力センサ66を適宜、バケット用圧力センサ662、と称し、方向制御弁642に接続されるパイロット油路452のパイロット油圧を検出する圧力センサ67を適宜、バケット用圧力センサ672、と称する。
また、以下の説明において、バケット操作用油路4512Aに配置されるバケット用圧力センサ661を適宜、バケット用圧力センサ661A、と称し、バケット操作用油路4512Bに配置されるバケット用圧力センサ661を適宜、バケット用圧力センサ661B、と称する。また、バケット調整用油路4522Aに配置されるバケット用圧力センサ672を適宜、バケット用圧力センサ672A、と称し、バケット調整用油路4522Bに配置されるバケット用圧力センサ672を適宜、バケット用圧力センサ672B、と称する。
掘削制御を実行しない場合、作業機コントローラ26は、制御弁27を制御して、パイロット油路450を開ける(全開にする)。パイロット油路450が開くことにより、パイロット油路451のパイロット油圧とパイロット油路452のパイロット油圧とは等しくなる。制御弁27によりパイロット油路450が開いた状態で、パイロット油圧は、操作装置25の操作量に基づいて調整される。
制御弁27によりパイロット油路450が全開したとき、圧力センサ66に作用するパイロット油圧と圧力センサ67に作用するパイロット油圧とは等しい。制御弁27の開度が小さくなることによって、圧力センサ66に作用するパイロット油圧と圧力センサ67に作用するパイロット油圧とは異なる。
掘削制御等のように、作業機2が作業機コントローラ26によって制御される場合、作業機コントローラ26は、制御弁27に制御信号を出力する。パイロット油路451は、例えばパイロットリリーフ弁の作用により所定の圧力(パイロット油圧)を有する。作業機コントローラ26から制御弁27に制御信号が出力されると、制御弁27は、その制御信号に基づいて作動する。パイロット油路451のパイロット油は、制御弁27を介して、パイロット油路452に供給される。パイロット油路452のパイロット油圧は、制御弁27により調整(減圧)される。パイロット油路452のパイロット油圧が、方向制御弁64に作用する。これにより、方向制御弁64は、制御弁27で制御されたパイロット油圧に基づいて作動する。本実施形態において、圧力センサ66は、制御弁27によって調整される前のパイロット油圧を検出する。圧力センサ67は、制御弁27によって調整された後のパイロット油圧を検出する。
減圧弁27Aにより圧力が調整されたパイロット油が方向制御弁64に供給されることにより、スプール64Sは軸方向に関して一側に移動する。減圧弁27Bにより圧力が調整されたパイロット油が方向制御弁64に供給されることにより、スプール64Sは軸方向に関して他側に移動する。その結果、軸方向に関するスプール64Sの位置が調整される。
例えば、作業機コントローラ26は、ブーム用減圧弁270A及びブーム用減圧弁270Bの少なくとも一方に制御信号を出力して、ブームシリンダ10に接続された方向制御弁640に対するパイロット油圧を調整することができる。
また、作業機コントローラ26は、アーム用減圧弁271A及びアーム用減圧弁271Bの少なくとも一方に制御信号を出力して、アームシリンダ11に接続された方向制御弁641に対するパイロット油圧を調整することができる。
また、作業機コントローラ26は、バケット用減圧弁272A及びバケット用減圧弁272Bの少なくとも一方に制御信号を出力して、バケットシリンダ12に接続された方向制御弁642に対するパイロット油圧を調整することができる。
作業機コントローラ26は、掘削制御において、前述したように、掘削対象の目標形状である設計地形を示す目標掘削地形43I(目標掘削地形データU)とバケット8の位置を示すバケット刃先位置データSとに基づき、目標掘削地形43Iとバケット8との距離dに応じてバケット8が目標掘削地形43Iに近づく速度が小さくなるように、ブーム6の速度を制限する。
本実施形態において、作業機コントローラ26は、ブーム6の速度を制限するための制御信号を出力するブーム制限部を有する。本実施形態においては、操作装置25の操作に基づいて作業機2が駆動する場合において、バケット8の刃先8Tが目標掘削地形43Iに侵入しないように、作業機コントローラ26のブーム制限部から出力される制御信号に基づいて、ブーム6の動きが制御(ブーム介入制御)される。具体的には、掘削制御において、刃先8Tが目標掘削地形43Iに侵入しないように、ブーム6は、作業機コントローラ26により、上げ動作が実行される。
本実施形態においては、ブーム介入制御を実現するために、作業機コントローラ26から出力された、ブーム介入制御に関する制御信号に基づいて作動する介入弁27Cがパイロット油路50に設けられる。ブーム介入制御において、パイロット油路50に、圧力がパイロット油圧に調整されたパイロット油が流れる。介入弁27Cは、パイロット油路50に配置され、パイロット油路50のパイロット油圧を調整可能である。
以下の説明において、ブーム介入制御において圧力が調整されたパイロット油が流れるパイロット油路50を適宜、介入用油路501、502と称する。
介入用油路501に、ブームシリンダ10に接続された方向制御弁640に供給されるパイロット油が流れる。介入用油路油路501は、方向制御弁640と接続されたブーム操作用油路4510B及びブーム調整用油路4520Bにシャトル弁51を介して接続されている。
シャトル弁51は、2つの入口と、1つの出口とを有する。一方の入口は、介入用油路501と接続される。他方の入口は、ブーム操作用油路4510Bと接続される。出口は、ブーム調整用油路4520Bと接続される。シャトル弁51は、介入用油路501及びブーム操作用油路4510Bのうち、パイロット油圧が高い方の油路と、ブーム調整用油路4520Bとを接続する。例えば、介入用油路501のパイロット油圧がブーム操作用油路4510Bのパイロット油圧よりも高い場合、シャトル弁51は、介入用油路501とブーム調整用油路4520Bとを接続し、ブーム操作用油路4510Bとブーム調整用油路4520Bとを接続しないように作動する。その結果、介入用油路501のパイロット油がシャトル弁51を介してブーム調整用油路4520Bに供給される。ブーム操作用油路4510Bのパイロット油圧が介入用油路501のパイロット油圧よりも高い場合、シャトル弁51は、ブーム操作用油路4510Bとブーム調整用油路4520Bとを接続し、介入用油路501とブーム調整用油路4520Bとを接続しないように作動する。これにより、ブーム操作用油路4510Bのパイロット油がシャトル弁51を介してブーム調整用油路4520Bに供給される。
介入用油路501に、介入弁27Cと、介入用油路501のパイロット油のパイロット油圧を検出する圧力センサ68とが設けられている。介入用油路501は、介入弁27Cを通過する前のパイロット油が流れる介入用油路501と、介入弁27Cを通過した後のパイロット油が流れる介入用油路502とを含む。介入弁27Cは、ブーム介入制御を実行するために作業機コントローラ26から出力された制御信号に基づいて制御される。
ブーム介入制御が実行されないとき、操作装置25の操作によって調整されたパイロット油圧に基づいて方向制御弁64が駆動されるようにする。例えば、作業機コントローラ26は、操作装置25の操作によって調整されたパイロット油圧に基づいて方向制御弁640が駆動されるように、ブーム用減圧弁270Bによりブーム操作用油路4510Bを開ける(全開にする)とともに、介入弁27Cにより介入用油路501を閉じる。
ブーム介入制御が実行されるとき、作業機コントローラ26は、介入弁27Cによって調整されたパイロット油圧に基づいて方向制御弁640が駆動されるように、各制御弁27を制御する。例えば、掘削制御においてブーム6の移動を制限するブーム介入制御を実行する場合、作業機コントローラ26は、介入弁27Cによって調整された介入用油路50のパイロット油圧が、操作装置25によって調整されるブーム操作用油路4510Bのパイロット油圧よりも高くなるように、介入弁27Cを制御する。このようにすることで、介入弁27Cからのパイロット油がシャトル弁51を介して方向制御弁640に供給される。
バケット8が目標掘削地形43Iに侵入しないように操作装置25によりブーム6が高速で上げ動作される場合、ブーム介入制御は実行されない。この場合、ブーム6が高速で上げ動作されるように操作装置25が操作され、その操作量に基づいてパイロット油圧が調整されることにより、操作装置25の操作によって調整されるブーム操作用油路4510Bのパイロット油圧は、介入弁27Cによって調整される介入用油路501のパイロット油圧よりも高くなる。その結果、操作装置25の操作によってパイロット油圧が調整されたブーム操作用油路4510Bのパイロット油がシャトル弁51を介して方向制御弁640に供給される。
ブーム介入制御において、作業機コントローラ26は、制限条件が満たされているか否かを判定する。制限条件は、距離dが前述した第1所定値dth1より小さいこと及びブーム制限速度Vc_bm_lmtがブーム目標速度Vc_bmよりも大きいことを含む。例えば、ブーム6を下降させる場合、ブーム6の下方へのブーム制限速度Vc_bm_lmtの大きさが、下方へのブーム目標速度Vc_bmの大きさよりも小さいときには、作業機コントローラ26は、制限条件が満たされていると判定する。また、ブーム6を上昇させる場合、ブーム6の上方へのブーム制限速度Vc_bm_lmtの大きさが、上方へのブーム目標速度Vc_bmの大きさよりも大きいときには、作業機コントローラ26は、制限条件が満たされていると判定する。
制限条件が満たされている場合、作業機コントローラ26は、ブーム制限速度Vc_bm_lmtでブームが上昇するようにブーム介入指令CBIを生成し、ブームシリンダ10の制御弁27を制御する。このようにすることで、ブームシリンダ10の方向制御弁640は、ブーム制限速度Vc_bm_lmtでブームが上昇するように作動油をブームシリンダ10に供給するので、ブームシリンダ10は、ブーム制限速度Vc_bm_lmtでブーム6を上昇させる。
実施形態1において、アーム制限速度Vc_am_lmtの絶対値が、アーム目標速度Vc_amの絶対値よりも小さいことが、制限条件に含まれてもよい。制限条件は、他の条件をさらに含んでもよい。例えば、制限条件は、アーム操作量が0であることをさらに含んでもよい。制限条件は、距離dが第1所定値dth1より小さいことを含まなくてもよい。例えば、制限条件は、ブーム6の制限速度がブーム目標速度よりも大きいことのみであってもよい。
第2所定値dth2は、第1所定値dth1より小さければ、0より大きくてもよい。この場合には、ブーム6の刃先8Tが目標掘削地形43Iに到達する前に、ブーム6の制限とアーム7の制限との両方が行われる。このため、ブーム6の刃先8Tが目標掘削地形43Iに到達する前であっても、ブーム6の刃先8Tが目標掘削地形43Iを超えそうなときに、ブーム6の制限とアーム7の制限との両方を行うことができる。
(操作レバーが電気方式である場合)
左操作レバー25L及び右操作レバー25Rが電気方式である場合、操作レバー25L及び右操作レバー25Rに対応するポテンショメータ等の電気信号を作業機コンコントローラ26が取得する。この電気信号を、操作指令電流値と称する。作業機コントローラ26は、操作指令電流値に基づく開閉指令を制御弁27へ出力する。制御弁27からは、開閉指令に応じた圧力の作動油が方向制御弁のスプールに供給されてスプールを移動させるので、方向制御弁を介してブームシリンダ10、アームシリンダ11又はバケットシリンダ12に作動油が供給されてこれらが伸縮する。
掘削制御において、作業機コントローラ26は、掘削制御の指令値及び操作指令電流値に基づく開閉指令を制御弁27に出力する。掘削制御の指令値は、例えば、前述したブーム介入指令CBIであり、掘削制御においてブーム介入制御を実行するための指令値である。開閉指令が入力された制御弁27は、開閉指令に応じた圧力の作動油が方向制御弁のスプールに供給されてスプールを移動させる。ブームシリンダ10の方向制御弁のスプールには、掘削制御の指令値に応じた圧力の作動油が供給されるので、ブームシリンダ10が伸びてブーム6を上昇させる。次に、油圧ショベル100の作業機2が溝を掘削する際の掘削制御について説明する。
<溝掘削について>
図16、図17、図18、図19A及び図19Bは、溝70を掘削するときのバケット8と溝70との関係を示す図である。図16及び図19Aは、油圧ショベル100の後方から見た状態を示し、図17及び図19Bは、油圧ショベル100の側方から見た状態を示す。溝70は、対向する溝壁71、72と、溝壁71、72との間の溝底73とで形成される。溝70は、例えば、水道管のような埋設物を埋め込むために掘削され、埋設物が設置されると埋め戻される。このため、一般には、溝70は溝底73の位置精度が重要であり、溝壁71、72の位置精度はそれ程要求されない。このため、溝70の掘削においては、溝壁71、72はある程度掘り込まれてもよい。溝70の掘削において、図5に示す作業機コントローラ26は、バケット8の刃先8Tが溝底73を掘り込み過ぎないように、溝底73の目標掘削地形43I(目標掘削地形データU)と刃先8Tの位置情報とに基づいて掘削制御を実行する。
本実施形態においては、例えば、バケット8の刃先8Tと目標掘削地形43Iとの間の最短となる距離dに基づいて掘削制御が実行される。このため、図18及び図19Aに示すように、例えば掘削により一方の溝壁71に向かってバケット8が接近し、バケット8の幅方向外側の部分が掘削すると、その部分の刃先8Tと溝70(より具体的には溝壁71)との距離が最短となる。この場合、図19Bに示すように、距離dは負、すなわち刃先8Tは、溝壁71の目標掘削地形43Iの下方に位置するので、掘削制御が実行中である場合、作業機コントローラ26は、バケット8が溝壁71から離れるように油圧ショベル100のブーム6を制御して、バケット8を上昇させる。その結果、油圧ショベル100のオペレータが意図しない動作をすることになり、オペレータに違和感を与える。これは、例えば、バケット8の幅方向における最も外側の刃先8Tと目標掘削地形43Iとの間の距離に基づいて掘削制御が実行される場合も同様である。
図20は、目標掘削地形43Iから前後方向目標掘削地形データUを切り出す位置を説明するための図である。図21は、目標掘削地形43Iから前後方向目標掘削地形データUを切り出す平面を説明するための図である。図20に示す例において、バケット8と目標掘削地形43Iとはyz平面内において傾斜している。この場合、幅方向(y軸方向)における最も外側の刃8Btの刃先8Tと、目標掘削地形43Iとの距離dmが最短になる。図21に示す平面42mは、xz平面と平行であり、かつ図20に示すバケット8の幅方向における最も外側の刃8Btの刃先8Tを通る。したがって、平面42mと目標施工面41とが交差する部分の情報が、バケット8の刃先8Tと目標掘削地形43Iとの間の最短となる距離dの位置における前後方向目標掘削地形データUになる。
前後方向目標掘削地形データUは、バケット8の幅方向中央における位置において、目標掘削地形43Iから切り出されてもよい。図20に示す例において、幅方向中央における刃8Bcの刃先8Tと目標掘削地形43Iとの距離dc及び幅方向中央における刃8Bcの刃先8Tの位置で切り出された前後方向目標掘削地形データUに基づいて、掘削制御が行われる。図21に示す平面42は、xz平面と平行であり、かつ図20に示すバケット8の幅方向中央における刃8Btの刃先8Tを通る。したがって、平面42と目標掘削地形43Iとが交差する部分の情報が、バケット8の幅方向中央の位置における前後方向目標掘削地形データUになる。
本実施形態においては、バケット8の刃先8Tと目標掘削地形43Iとの間の最短となる距離dに基づく掘削制御と、バケット8の幅方向中央における刃8Bcの刃先8Tと目標掘削地形43Iとの距離dcに基づく掘削制御と、バケット8の幅方向における最も外側の刃先8Tと目標掘削地形43Iとの間の距離に基づく掘削制御とがある。油圧ショベル100のオペレータは、例えば、図2に示すスイッチ29Sを操作して、これらを切り替えることができる。
掘削制御において、作業機コントローラ26は、バケット8の幅方向中央の位置における前後方向目標掘削地形データUを用いれば、バケット8の幅方向外側が図18及び図19Aに示す溝壁71又は溝壁72を掘り込んだとしても、オペレータが意図しないバケット8の上昇は抑制される。バケット8の幅方向中央の位置における前後方向目標掘削地形データUが用いられることにより、バケット8の幅方向外側が溝壁71又は溝壁72を掘り込んだ場合でも、前後方向目標掘削地形データUは溝底73に対応する目標施工情報Tから生成されたものだからである。このように、作業機コントローラ26は、オペレータが意図する通りに作業機2を動作させることができる。
本実施形態において、掘削制御を用いて溝70を掘削する場合、例えば、バケット8の幅方向中央の位置における前後方向目標掘削地形データUを用いるモードを選択すれば、溝70を掘削する場合にオペレータが意図しない動作をある程度は回避できる。しかし、溝70の掘削と他の作業とが継続して行われるような場合、オペレータがバケット8の幅方向中央の位置における前後方向目標掘削地形データUを用いるモードを選択し忘れるようになることがある。このような場合、オペレータが意図しない動作が発生する可能性がある。本実施形態は、バケット8の刃先8Tと目標掘削地形43Iとの間の最短となる距離dを用いるモードを維持した状態で、掘削制御を用いて溝70を掘削する場合であっても、オペレータの意図しないバケット8の動作を抑制するため、前述した幅方向目標掘削地形データUwを用いる。
<溝70を掘削する際の掘削制御>
図22及び図23は、幅方向目標掘削地形データUwを切り出す平面45を説明するための図である。第1切り出し面としての平面45は、幅方向目標掘削地形データUwを、目標形状を示す第1の目標施工面としての目標施工面41及び目標施工面41の側方に連なる第2の目標施工面としての目標施工面41Sから切り出す。第2切り出し面としての平面42は、前述した前後方向目標掘削地形データUを、目標形状を示す第1の目標施工面としての目標施工面41から切り出す。平面45は、作業機動作平面と交差(本実施形態では直交)し、かつグローバル座標系における鉛直方向と平行な平面である。平面42は、作業機2の動作平面又は動作平面と平行な平面である。本実施形態においては、図1に示す作業機2のうちアーム2が動作する所定の平面、すなわち前述したアーム動作平面又はアーム動作平面と平行な平面が、平面42となる。
平面42及び平面45が目標施工面41から目標掘削地形43Iを切り出す場合、平面42及び平面45は、いずれも掘削対象位置44を通る。掘削対象位置44は、グローバル座標系において刃先8Tの現時点における刃先位置P4を通る、鉛直方向に下ろされた垂線と目標施工面41との交点である。刃先位置P4は、バケット8の幅方向中央で目標施工面41から目標掘削地形43Iを切り出すか、幅方向外側で目標掘削地形43Iを切り出すか、刃先8Tと目標掘削地形43Iとの最短距離となる位置で目標掘削地形43Iを切り出すかによって、バケット8の幅方向の位置が変化する。
平面42と目標施工面41とが交差する部分における目標施工面41の位置情報、すなわち交線43の位置情報が、前後方向目標掘削地形データUである。前後方向目標掘削地形データUによって、前後方向における目標掘削地形43Iが生成される。図23に示すように、交線43を基準として、油圧ショベル100の側方視において、平面45と図22に示す目標施工面41とが交差する部分の位置情報、すなわち交線46の位置情報が、幅方向目標掘削地形データUwである。幅方向目標掘削地形データUwによって、幅方向における目標掘削地形46Iが生成される。
図24は、溝70を掘削する際の目標掘削地形46Iと油圧ショベル100のバケット8との関係を示す図である。図24に示す溝70は、目標掘削地形46I、すなわち幅方向目標掘削地形データUwに含まれる情報のうち、第1変曲点Pv1、第2変曲点Pv2、第3変曲点Pv3及び第4変曲点Pv4と、これらを接続する直線とで表される。第1変曲点Pv1と第2変曲点Pv2との間が溝底73であり、第2変曲点Pv2と第3変曲点Pv3との間が溝壁71であり、第1変曲点Pv1と第3変曲点Pv3との間が溝壁72である。
図24中の直線LN1、LN2、LN3は、ローカル座標系(x、y、z)におけるyz平面内における水平線、すなわちy軸に平行な線である。直線LN1、直線LN2又は直線LN3を含み、ローカル座標系(x、y、z)におけるz軸と直交する平面は、ローカル座標系(x、y、z)におけるxy平面と平行な平面、すなわちローカル座標系(x、y、z)の水平面である。ローカル座標系(x、y、z)における水平面は、油圧ショベル100の姿勢によって鉛直方向との関係が変化する。
第1変曲点Pv1の座標は(y1、z1)、第2変曲点Pv2の座標は(y2、z2)、第3変曲点Pv3の座標は(y3、z3)、第4変曲点Pv4の座標は(y4、z4)である。ローカル座標系(x、y、z)の水平面に対する目標掘削地形46Iの角度αは、第1変曲点Pv1及び第2変曲点Pv2等の座標を用いて求めることができる。例えば、図24に示す例において、バケット8の直下における目標掘削地形46Iの、ローカル座標系(x、y、z)の水平面に対する角度、すなわち第1変曲点Pv1と第2変曲点Pv2とを結ぶ直線と直線LN1とのなす角度α1は、arctan((z2−z1)/(y2−y1))で求めることができる。油圧ショベル100の後方から見て右側における目標掘削地形46Iの、ローカル座標系(x、y、z)の水平面に対する角度α2は、arctan((z3−z2)/(y3−y2))で求めることができる。油圧ショベル100の後方から見て左側における目標掘削地形46Iの、ローカル座標系(x、y、z)の水平面に対する角度α3は、arctan((z1−z4)/(y1−y4))で求めることができる。このように、目標掘削地形46Iの、ローカル座標系(x、y、z)の水平面に対する角度αは、少なくとも2つの変曲点の座標から求めることができる。前後方向における目標掘削地形43Iも同様に取得される。
作業機コントローラ26は、表示コントローラ28から取得した作業機2の位置、より具体的にはバケット8の刃先位置P4、前後方向目標掘削地形データU及び幅方向目標掘削地形データUwに基づいて、掘削制御を実行する。より具体的には、作業機コントローラ26は、前後方向目標掘削地形データUに基づいて作業機2の前後方向における掘削制御を実行し、図5に示す作業機コントローラ26の制御可否判定部58は、幅方向目標掘削地形データUwに基づいて実行中の掘削制御を停止したり、停止中の掘削制御を再開したりする。このように、本実施形態において、掘削制御におけるブーム6の制御量は、前後方向目標掘削地形データUに基づいて求められる。幅方向目標掘削地形データUwは、掘削制御を停止するか実行するかの判定に用いられる。
本実施形態において、作業機コントローラ26の制御可否判定部58は、表示コントローラ28から幅方向目標掘削地形データUwを取得する。制御可否判定部58は、バケット8の直下における幅方向目標掘削地形データUwの水平面に対する角度αが予め定められた大きさ(以下、適宜傾斜角度閾値と称する)αc以上である場合に、掘削制御を停止する。本実施形態において、傾斜角度閾値αcは70度であるが、これに限定されるものではない。図24に示す例において、バケット8の直下における幅方向目標掘削地形データUwの、直線LN1に対応する水平面に対する角度α1は、傾斜角度閾値αcよりも小さい。この場合、制御可否判定部58は実行中の掘削制御を継続する。
図24に示す例において、上部旋回体3が、例えば、油圧ショベル100の後方から見て右側に旋回し、バケット8の直下に溝壁71が位置するようになったとする。溝壁71に対応する幅方向目標掘削地形データUwの、直線LN2に対応する水平面に対する角度α2は、傾斜角度閾値αc以上である。この場合、制御可否判定部58は実行中の掘削制御を停止する。その結果、作業機コントローラ26は、バケット8が溝壁71を掘削しても、バケット8を溝壁71から離れる方向に移動させず、ブーム6、アーム7及びバケット8を、それぞれのブーム目標速度Vc_bm、アーム目標速度Vc_am及びバケット目標速度Vc_bktに基づいて制御する。このようにすることで、油圧ショベル100が、掘削制御を実行しながら溝70を掘削している場合にバケット8が溝壁71、72を掘削した場合には、オペレータの操作にしたがって作業機2が動作する。その結果、作業機2はオペレータの意図した通りに動作するので、オペレータが受ける違和感が低減される。
バケット8が溝壁71の上方に位置する状態から、上部旋回体3が、油圧ショベル100の後方から見て左側に旋回し、バケット8の直下に再び溝底73が位置するようになったとする。この場合、バケット8の直下における幅方向目標掘削地形データUwの、直線LN1に対応する水平面に対する角度α1は、傾斜角度閾値αcよりも小さくなる。すると、制御可否判定部58は停止の掘削制御を再開する。このような制御により、油圧ショベル100が溝底73を掘削する場合は掘削制御が実行されるので、バケット8の刃先8Tが溝底73の目標掘削地形43I、46Iを超えて掘削することが抑制されるので、溝底73の寸法及び位置の精度低下が抑制される。作業機コントローラ26は、幅方向における目標掘削地形に基づき掘削制御を実行してもよい。本実施形態では、バケット8の幅方向中央位置において前後方向目標掘削地形データUを設定するモードを使用しない場合について説明したが、モード設定を使用した場合又はモード設定がない場合も本実施形態に含まれてよい。次に、本実施形態に係る作業機械の制御方法を用いて溝70を掘削する際の制御例を説明する。
(本実施形態に係る作業機械の制御方法の制御例)
図25は、溝70を掘削する際の制御例を示すフローチャートである。ステップS101において、図2に示すスイッチ29Sをオペレータが操作することにより掘削制御が開始されると、ステップS102において、図5に示す表示コントローラ28は、センサコントローラ39から傾斜角θ1、θ2、θ3を取得し、傾斜角θ1、θ2、θ3及び油圧ショベル100の旋回中心位置データXRから、バケット刃先位置データSを生成する。ステップS103において、図5に示す作業機コントローラ26は、目標掘削地形43Iとバケット8の刃先8Tとの距離dを求める。
ステップS104において、作業機コントローラ26は、油圧ショベル100のオペレータが作業機2を操作することによる目標掘削地形43I方向の刃先速度、具体的にはブーム目標速度Vc_bmを求める。次に、ステップS105において、図5に示す作業機コントローラ26の制御可否判定部58は、バケット8の直下における目標掘削地形46I(幅方向目標掘削地形データUw)を及び刃先位置P4を作業機コントローラ26から取得し、目標掘削地形46Iの水平面に対する角度αを求める。そして、制御可否判定部58は、得られた角度αと傾斜角度閾値αcとを比較する。比較の結果、α≧αcである場合(ステップS105、Yes)、バケット8の直下は溝70の溝壁71、72である。このため、ステップS106において、制御可否判定部58は掘削制御を停止する。この場合、オペレータによる作業機コントローラ26の操作にしたがって作業機2が動作する。
α<αcである場合(ステップS105、No)、バケット8の直下は溝70の溝壁71、72ではないので、掘削制御を実行してもよい状態である。この場合、ステップS107において、制御可否判定部58は掘削制御を実行する。このため、バケット8の刃先8Tが、目標掘削地形46Iを超えて掘削対象を掘削しようとした場合、作業機コントローラ26は、例えばブーム6を上昇させて、バケット8が目標掘削地形46Iを超えて掘り込むことを抑制する。
(実施形態2)
図26は、溝70を掘削しているときに油圧ショベル100のバケット8が側壁71aに向かう状態を示す図である。図27は、油圧ショベル100の後方からバケット8を見た状態を示す図である。図28は、バケット8が側壁71aに接近するときの速度成分を説明するための図である。図29は、バケット8の刃先8Tと側壁71aとの距離dを示す図である。図30は、ブーム制限速度Vc_bm_lmtを説明するための図である。
実施形態2は、作業機2、より具体的にはバケット8が、その幅方向の速度成分を有する場合に、作業機2の幅方向の目標掘削地形46I(幅方向目標掘削地形データUw)に基づいて、掘削制御を実行する。例えば、図26に示すように、油圧ショベル100が地面73Aを掘削しているときに、例えば上部旋回体3が旋回することにより(本例では図26の矢印RDで示す方向)、作業機2が側壁71aの方向に向かって移動することがある。この場合、溝の掘削を対象とした実施形態1では掘削制御が停止されるが、本実施形態では、バケット8が側壁71aの目標掘削地形74を超えて掘り込まないように、作業機2の幅方向においても掘削制御が実行される。具体的には、例えば、作業機コントローラ26は、図27に示すようにバケット8が側壁71aに向かって速度Vctで接近している場合に、バケット8が側壁71aの目標掘削地形74を超えて掘り込む可能性があると判定したら、例えば、図1に示すブーム6を上昇させてこれを回避する。
本実施形態において、作業機コントローラ26は、作業機2に、その幅方向の速度成分が発生した場合に、幅方向における掘削制御を実行する。作業機2の幅方向の速度成分は、図1に示す上部旋回体3の旋回によって発生する。また、油圧ショベル100のローカル座標系におけるxy平面において、作業機2が走行装置5の進行方向に対して傾いている場合にも、作業機2の幅方向の速度成分が発生する。本実施形態においては、上部旋回体3の旋回が発生した場合に幅方向における掘削制御を実行する例を説明するが、走行装置5の走行によって作業機2の幅方向の速度成分が発生した場合に、幅方向における掘削制御を実行してもよい。また、走行装置5が走行している場合、幅方向における掘削制御を停止するようにしてもよい。
図31は、幅方向における掘削制御の処理例を示すフローチャートである。次の説明においては、バケット8が溝70の側壁71aを掘り込み過ぎないように幅方向における掘削制御を実行する例を説明するが、掘削対象は側壁71a以外、例えば法面等であってもよい。幅方向における目標掘削地形74は、幅方向を図22に示す掘削対象位置44に基づいて目標掘削地形46I(幅方向目標掘削地形データUw)が取得される場合と同様の方法で取得される。
幅方向における掘削制御を実行するにあたり、図5に示す作業機コントローラ26の記憶部26Mは、目標速度情報として、旋回操作量MRと旋回目標角速度ωctとの関係を規定する情報を記憶している。ステップS21において、図5に示す目標速度決定部52は、操作装置25から旋回操作量MRを取得し、得られた旋回操作量MRにより旋回目標角速度ωctを求める。次に、ステップS22において、目標速度決定部52は、傾斜角θ1、θ2、θ3及びブーム6の長さL1、アーム7の長さL2及びバケット8の長さL3から、図3Aに示す旋回軸zとバケット8の刃先8Tとの距離LRを求める。この距離LRは、刃先8Tの旋回半径である。ステップS23において、目標速度決定部52は、旋回目標角速度ωctと刃先8Tの旋回半径(距離LR)とを乗ずることにより、刃先8Tの旋回目標速度Vctを求める。
次に、ステップS24において、目標速度決定部52は、図28に示すように、旋回目標速度Vctを、目標掘削地形74(幅方向目標掘削地形データUw)に垂直な方向の速度成分(以下、適宜垂直速度成分と称する)Vcy_t及び目標掘削地形74(幅方向目標掘削地形データUw)に平行な方向の速度成分(以下、適宜水平速度成分と称する)Vcx_tに変換する。図28に示す例では、側壁71aに対応する目標掘削地形74に対して垂直速度成分Vcy_t及び水平速度成分Vcx_tが求められる。図28に示す例は、側壁71aが油圧ショベル100のローカル座標系(x、y、z)の水平面HL、すなわちxy平面と平行な平面に対して角度αだけ傾斜している。このため、垂直速度成分Vcy_tはVct×cos(π/2−α)、水平速度成分Vcx_tはVct×sin(π/2−α)で求めることができる。
ステップS25において、図5に示す作業機コントローラ26の距離取得部53は、図29に示すように、バケット8の刃先8Tと側壁71aに対応する目標掘削地形74との間の距離dを取得する。詳細には、距離取得部53は、前述したように取得した刃先8Tの位置情報及び目標掘削地形74の位置を示す幅方向目標掘削地形データUwから、バケット8の幅方向中央の刃先8Tと目標掘削地形74との間の距離dを算出する。この場合、距離取得部53は、バケット8の刃先8Tと目標掘削地形74との間の最短となる距離を算出し、作業機コントローラ26は、これに基づいて幅方向における掘削制御を実行してもよい。
ステップS26において、図5に示す作業機コントローラ26の制限速度決定部54は、バケット8の刃先8Tと目標掘削地形74との間の距離dに基づいて、図1に示す作業機2全体の制限速度Vcy_lmtを算出する。作業機2全体の制限速度Vcy_lmtについては、実施形態1と同様であるので説明を省略する。ステップS27において、制限速度決定部54は、図30に示すように、作業機2全体の制限速度Vcy_lmtから旋回目標速度Vctの垂直速度成分Vcy_tを減算することにより、ブーム6の制限垂直速度成分Vcy_bm_lmtを算出する。
ステップS28において、制限速度決定部54は、図30に示すように、ブーム6の制限垂直速度成分Vcy_bm_lmtを、ブーム6の制限速度(ブーム制限速度)Vc_bm_lmtに変換する。具体的には、制限垂直速度成分Vcy_bm_lmtにsin(π/2−α)を乗ずることにより、ブーム制限速度Vc_bm_lmtが得られる。ステップS29において、ブーム介入指令CBIに基づくパイロット圧力がブーム6の操作に基づいて生成されたパイロット圧力よりも大きい場合、作業機コントローラ26の作業機制御部57は、ブーム6の速度がブーム制限速度Vc_bm_lmtとなるようにブーム指令信号CBを生成し、図2及び図15に示すに示す介入弁27Cを制御する。
本実施形態は、幅方向における掘削制御を実行することにより、例えば、掘削後に上部旋回体3を旋回させたときにバケットが法面等に接触するような事態を回避できる。本実施形態において、作業機コントローラ26aは、幅方向における掘削制御と、前後方向における掘削制御との両方を並行して実行してもよい。また、作業機コントローラ26は、作業機2の旋回の有無により、前後方向における掘削制御と幅方向における掘削制御とを切り替えて実行してもよい。例えば、前後方向における掘削制御に作業機2が旋回した場合、作業機コントローラ26は、前後方向における掘削制御を停止して幅方向における掘削制御のみを実行し、作業機2の旋回が停止した場合、幅方向における掘削制御を停止して前後方向における掘削制御を再開してもよい。作業機コントローラ26は、幅方向における目標掘削地形に基づき掘削制御を実行してもよい。次に、旋回目標速度Vctと前後方向の目標速度Vftとを合成した速度に基づいた掘削制御を説明する。
(合成速度に基づく掘削制御)
図32は、旋回目標速度Vctと前後方向の目標速度Vftとを合成した速度に基づく掘削制御の処理を示すフローチャートである。図33は、前後方向の目標速度Vftを求める方法の説明図である。図34は、旋回目標速度Vctと前後方向の目標速度Vftとを合成した速度Vtを求める方法を示す図である。図35は、バケット8が側壁71aに対応する目標掘削地形74に接近するときの速度成分を説明するための図である。図36は、ブーム制限速度Vt_bm_lmtを説明するための図である。ステップS31において、図5に示す目標速度決定部52は、作業機2の旋回目標速度Vctと前後方向の目標速度Vftを求める。旋回目標速度Vctを求める手法は前述した通りなので省略する。
作業機2の前後方向の目標速度Vftは、次のようにして求められる。図33に示すように、目標速度決定部52は、ローカル座標系の垂直軸とブーム目標速度Vc_bmの方向とのなす角度β2とから、三角関数によりブーム目標速度Vc_bmをローカル座標系の垂直軸方向の速度成分VL1_bmと水平軸方向の速度成分VL2_bmとに変換する。目標速度決定部52は、ローカル座標系の垂直軸とアーム目標速度Vc_amの方向とのなす角度β3とから、三角関数によりアーム目標速度Vc_amをローカル座標系の垂直軸方向の速度成分VL1_amと水平軸方向の速度成分VL2_amとに変換する。目標速度決定部52は、ローカル座標系の垂直軸とバケット目標速度Vc_bkの方向とのなす角度β4とから、三角関数によりバケット目標速度Vc_bkをローカル座標系の垂直軸方向の速度成分VL1_bkと水平軸方向の速度成分VL2_bkとに変換する。
目標速度決定部52はアームの水平軸方向における速度成分VL2_am及びバケットの水平軸方向における速度成分VL2_bkからブーム水平軸方向の速度成分VL2_bmを減算する。この値が、前後方向の目標速度Vftである。
旋回目標速度Vct及び前後方向の目標速度Vftが求められたら、ステップS32において、目標速度決定部52は、これらを合成した速度Vtを求める(図34参照)。以下において、旋回目標速度Vctと前後方向の目標速度Vftとが合成された速度Vtを、制御目標速度Vtと称する。制御目標速度Vtは、√(Vct2+Vft2)で求めることができる。
次に、ステップS33において、目標速度決定部52は、図35に示すように、制御目標速度Vtを、目標掘削地形74(幅方向目標掘削地形データUw)に垂直な方向の速度成分(以下、適宜垂直速度成分と称する)Vty_t及び目標掘削地形74(幅方向目標掘削地形データUw)に平行な方向の速度成分(以下、適宜水平速度成分と称する)Vtx_tに変換する。図35に示す例では、図34に示す側壁71aに対応する目標掘削地形74に対して垂直速度成分Vty_t及び水平速度成分Vtx_tが求められる。図35に示す例は、側壁71aが油圧ショベル100のローカル座標系(x、y、z)の水平面HL、すなわちxy平面と平行な平面に対して角度αだけ傾斜している。このため、垂直速度成分Vty_tはVt×cos(π/2−α)、水平速度成分Vtx_tはVt×sin(π/2−α)で求めることができる。
ステップS34において、図5に示す作業機コントローラ26の距離取得部53は、先に説明した図29に示すように、バケット8の刃先8Tと側壁71aに対応する目標掘削地形74との間の距離dを取得する。詳細には、距離取得部53は、前述したように取得した刃先8Tの位置情報及び目標掘削地形46Iの位置を示す幅方向目標掘削地形データUwから、バケット8の幅方向中央の刃先8Tと目標掘削地形46Iとの間の距離dを算出する。この場合、距離取得部53は、バケット8の刃先8Tと目標掘削地形46Iとの間の最短となる距離を算出し、作業機コントローラ26は、これに基づいて幅方向における掘削制御を実行してもよい。
ステップS35において、図5に示す作業機コントローラ26の制限速度決定部54は、バケット8の刃先8Tと目標掘削地形46Iとの間の距離dに基づいて、図1に示す作業機2全体の制限速度Vty_lmtを算出する。作業機2全体の制限速度Vty_lmtについては、実施形態1と同様であるので説明を省略する。ステップS36において、制限速度決定部54は、図36に示すように、作業機2全体の制限速度Vty_lmtから旋回目標速度Vctの垂直速度成分Vty_tを減算することにより、ブーム6の制限垂直速度成分Vty_bm_lmtを算出する。
ステップS37において、制限速度決定部54は、図30に示すように、ブーム6の制限垂直速度成分Vty_bm_lmtを、ブーム6の制限速度(ブーム制限速度)Vt_bm_lmtに変換する。具体的には、制限垂直速度成分Vty_bm_lmtにsin(π/2−α)を乗ずることにより、ブーム制限速度Vt_bm_lmtが得られる。ステップS38において、ブーム介入指令CBIに基づくパイロット圧力がブーム6の操作に基づいて生成されたパイロット圧力よりも大きい場合、作業機コントローラ26の作業機制御部57は、ブーム6の速度がブーム制限速度Vt_bm_lmtとなるようにブーム指令信号CBを生成し、図2に示す介入弁27Cを制御する。
本例において、作業機コントローラ26は、旋回目標速度Vctと前後方向の目標速度Vftとを合成した制御目標速度Vtを用いることにより、作業機2の前後方向と幅方向との操作を考慮した目標掘削地形74を取得することができる。このため、掘削制御においては作業機2の前後方向と幅方向との切替が不要になるので、滑らかな掘削制御が実現できる。
(変形例)
本実施形態は、刃先8Tの旋回目標速度Vctを操作装置25から得られる旋回操作量MRに基づいて求めた。本変形例では、刃先8Tの旋回目標速度Vctを図2に示すIMU24の検出結果及び位置検出装置19によって検出されたGNSSアンテナ21、22の基準位置データP1、P2に基づいて、刃先8Tの旋回目標速度Vctを求める。本変形例は、IMU24の検出結果及び位置検出装置19によって検出されたGNSSアンテナ21、22の基準位置データP1、P2を用いて、作業機2の位置を予測する。
図37は、表示コントローラ28及び変形例に係る作業機コントローラ26a及びセンサコントローラ39aを示すブロック図である。図38A及び図38Bは、油圧ショベル100の姿勢を示す図である。作業機コントローラ26aは、実施形態1で説明した作業機コントローラ26(図5参照)と同様であるが、予測補正部59を備える点が異なる。予測補正部59は、上部旋回体3、すなわち、作業機2が向いている方位を示す旋回体方位データQを表示コントローラ28から取得する。予測補正部59は、上部旋回体3の旋回角速度ωをIMU24から取得する。予測補正部59は、旋回角速度データDωに基づいて、旋回体方位データQを予測補正する。
例えば、予測補正部59は、旋回角速度ωを遅れ時間tに乗算することによって、予測回転角ω・tを算出する。遅れ時間tとは、バケット刃先位置データS及び目標掘削地形データUの生成に要すると予測される時間である。例えば、本実施形態において、位置検出装置19は、例えば、100msec.程度の周期でGNSSアンテナ21、22の基準位置データP1、P2を検出して表示コントローラ28に出力するので、表示コントローラ28から出力されるバケット刃先位置データS及び目標掘削地形データUを作業機コントローラ26が取得するためには、少なくとも100msec.程度の時間を要する。また、表示コントローラ28に割り込み演算が発生した場合、バケット刃先位置データS及び目標掘削地形データUを作業機コントローラ26が取得するためには、さらに時間を要する。
予測補正部59は、バケット刃先位置データ生成部28Bから取得する上部旋回体3の旋回体方位データQの方位と、IMU29から取得する角速度ωと、予測される遅れ時間tと、に基づき、予測回転角ω・tだけ回転した時点における予測方位を示す補正旋回体方位データRを生成する。補正旋回体方位データRによって示される予測方位は、目標掘削地形データUの生成時点における上部旋回体3、すなわち、作業機2の方位である。
予測補正部59は、上部旋回体3の幅方向に対する傾斜角θ4及び上部旋回体3の前後方向に対する傾斜角θ5をIMU24から取得する。予測補正部59は、予測方位データR及び傾斜角θ4及び傾斜角θ5から、補正旋回体方位データRに基づく上部旋回体3の予測方位を算出する。予測補正部59は、予測方位における予測傾斜角θ4’、θ5’を算出する。次に、図38Aに示すように傾斜角θ6の傾斜地において油圧ショベル100が前向きで作業した後に、図38Bに示すように上部旋回体3が旋回して横向きになった場合を想定しながら、予測傾斜角θ4’、θ5’について説明する。
旋回動作の前後で上部旋回体3の前後方向に対する傾斜角θ5はθ6から徐々に小さくなって0になる。一方で側方方向に対する傾斜角θ4は0から徐々に大きくなってθ6になる。したがって、予測補正部59は、旋回角速度ωに基づいて、遅れ時間tが経過した後の予測傾斜角θ4’、θ5’を算出することができる。予測補正部59は予測傾斜角θ4’、θ5’をバケット刃先位置データ生成部28Bに出力する。傾斜地等で油圧ショベル100が作業を行う場合、旋回に伴って上部旋回体3の傾斜角θ4、θ5が変化する状況においても、上部旋回体3の傾斜の予測補正が可能となる。
図39は、予測補正部59が補正旋回体方位データRを更新する処理を説明するためのフロー図である。図40は、上部旋回体3の動作に合わせて実行される予測補正部59の処理を説明するための図である。予測補正部59の補正旋回体方位データRの更新について、図38A、図38B及び図40を参照しながら説明する。ステップS201において、予測補正部59は、上部旋回体3が向いている方位を示す旋回体方位データQを、例えば10Hz周期(第2周期の一例)でグローバル座標演算部23から取得する。
ステップS202において、予測補正部59は、旋回軸zを中心とする旋回角速度ωと、上部旋回体3の前後方向に対する傾斜角θ4と、上部旋回体3の左右方向に対する傾斜角θ5とを、例えば100Hz周期(第1周期の一例)でIMU24から取得する。ステップS203において、予測補正部59は、旋回体方位データQを取得したことに応じて、最新の旋回角速度ωを用いて上部旋回体3がω・tだけ旋回した後における上部旋回体3の方位を示す補正旋回体方位データRと、上部旋回体3の前後方向に対する予測傾斜角θ4’と、上部旋回体3の左右方向に対する予測傾斜角θ5’とに更新する。
ステップS204において、予測補正部59は、更新した補正旋回体方位データR、予測傾斜角θ4’、θ5’をバケット刃先位置データ生成部28Bに出力する。予測補正部59は、旋回体方位データQを取得するたびにステップS201からS204を繰り返すことによって補正旋回体方位データR、予測傾斜角θ4’、θ5’を更新する。
このように、予測補正部59は、旋回体方位データQより計測周期の早いIMU24が生成した旋回角速度ω及び傾斜角θ4、θ5を用いることにより、旋回体方位データQよりも高い周期で補正旋回体方位データR及び予測傾斜角θ4’、θ5’を生成することができる。また、補正旋回体方位データR及び予測傾斜角θ4’、θ5’は、熱ドリフトの変動を含む可能性のある旋回角速度ω及び傾斜角θ4、θ5を、グローバル座標演算部23から取得した旋回体方位データQにより更新することもできる。このため、遅れ時間tに対して目標掘削地形データUを生成するための周期に関連する補正旋回体方位データR及び予測傾斜角θ4’、θ5’を出力可能となる。
予測補正部59は、上部旋回体3の旋回角速度ωを示す旋回角速度ω(動作データの一例)と遅れ時間tとに基づいて旋回体方位データQを予測補正することによって、補正旋回体方位データR(補正旋回体配置データの一例)を生成する。バケット刃先位置データ生成部28Bは、基準位置データP1と旋回体方位データQと補正旋回体方位データRとに基づいて、バケット8の刃先8Tの位置を示すバケット刃先位置データS(作業機位置データの一例)を生成する。目標掘削地形データ生成部28Cは、バケット刃先位置データS及び目標施工情報Tに基づいて、目標掘削地形データUを生成する。遅れ時間tには、バケット刃先位置データS及び目標掘削地形データUの生成に必要な時間及び生成された目標掘削地形データUを作業機コントローラ26が取得するために必要な通信時間が含まれている。バケット刃先位置データS及び目標掘削地形データUの生成に必要な時間は、表示コントローラ28内に割り込み演算が発生したときの演算遅れが考慮されている。これらを考慮して、本実施形態においては、遅れ時間tとして、0.4秒程度が想定されているが、遅れ時間tは、作業機コントローラ26及び表示コントローラ28の仕様等に応じて適宜変更できる。
このように、予測補正部59は、上部旋回体3の旋回角速度ωに基づいて、目標掘削地形データUの生成時点において上部旋回体3が向いている方位を予測できる。そのため、バケット刃先位置データ生成部28Bは、遅れ時間tが経過した時点におけるバケット8の刃先8Tの位置(作業機2の位置)を予測できる。その結果、目標掘削地形データ生成部28Cは、遅れ時間tが経過した時点におけるバケット8の刃先8Tの位置に対応した目標掘削地形データUを生成することができる。作業機コントローラ26は、遅れ時間tが考慮された目標掘削地形データUを用いて幅方向における掘削制御を実行するので、バケット8がこれから掘削対象とする部分に近い目標掘削地形データUに基づいて作業機2を制御できる。
予測補正部59は、旋回角速度ωを、例えば100Hz(第1周期の一例)で取得し、旋回体方位データQを例えば10Hz(第2周期の一例)で取得する。したがって、予測補正部59は、定期的に取得される旋回体方位データQを用いて、補正旋回体方位データRを生成できる。このため、旋回角速度ωを生成するIMU24に熱ドリフトが発生したとしても、例えば10Hz毎に更新される旋回体方位データQを基準として補正方位を算出できる。その結果、補正方位を示す補正旋回体方位データRを持続して生成することができる。
本実施形態において、IMU24は、上部旋回体3の動作を示す動作データとして、上部旋回体3の旋回角速度ωを示す旋回角速度ω、傾斜角θ4、θ5を取得することとしたが、これに限られるものではない。IMU24は、上部旋回体3の傾斜を示す傾斜角度の変化を取得してもよい。上部旋回体3の傾斜角とは、単位時間当たりにおける傾斜角θ4、θ5(図3A及び図3B参照)の変化量である。このような傾斜角度の変化を旋回角速度ωに代えて用いることによっても、油圧ショベル100が回動した場合に、遅れ時間tの経過時点におけるバケット8の刃先8Tの位置を取得できるため、目標掘削地形データ生成部28Cは、遅れ時間tが経過した時点におけるバケット8の刃先8Tの位置に対応した目標掘削地形データUを生成することができる。
本実施形態において、予測補正部59は、IMU24によって生成される旋回角速度ωを取得することとしたが、これに限られるものではない。予測補正部59は、上部旋回体3に設置するポテンショメータによって検出される回転角度及び操作装置25から出力される旋回操作量MRに基づいて旋回角速度ωを取得することができる。また、予測補正部59は、グローバル座標演算部23からGNSSアンテナ21、22の基準位置データP1、P2を取得し、2つの基準位置データP1、P2に基づいて旋回角速度ωを取得することもできる。
本実施形態において、バケット刃先位置データ生成部28Bは、基準位置データP1と旋回体方位データQとに基づいて、油圧ショベル100の旋回中心の位置を算出することとしたが、これに限られるものではない。バケット刃先位置データ生成部28Bは、旋回体方位データQに代えて、GNSSアンテナ21が基準位置データP1を受信した時点における上部旋回体3の方位を示す磁気センサ等の方位センサにより取得するデータを用いてもよい。
本実施形態において、予測補正部59は、例えば10Hz周期(第2周期の一例)で旋回体方位データQをグローバル座標演算部23から取得することとしたが、IMU24の熱ドリフトを考慮する必要がないのであれば、旋回体方位データQを少なくとも1回取得すればよい。この場合、予測補正部59は、取得した旋回体方位データQを基準に旋回角速度ωを随時加算することによって、上部旋回体3の方位を、例えば100Hz周期(第1周期の一例)で更新することができる。
本実施形態において、表示コントローラ28は、作業機位置データとしてバケット刃先位置データSを生成することとしたが、これに限られるものではない。表示コントローラ28は、バケット刃先位置データSに代えて、バケット8の任意の位置を示す位置データを取得してもよい。また、表示コントローラ28は、バケット刃先位置データSの目標掘削地形データUaに対し、より近い任意の位置を示す位置データを取得してもよい。また、表示コントローラ28で行われる目標施工情報の格納、バケット刃先位置データの生成及び目標掘削地形データの生成のうち少なくとも1つは作業機コントローラ26が実行してもよい。センサコントローラ39が実行する各処理は、作業機コントローラ26が実行してもよい。
油圧ショベル100は、作業機2の幅方向における目標掘削地形46Iに基づく掘削制御と、油圧ショベル100の前後方向における目標掘削地形43Iに基づく前後方向の掘削制御との両方が実行できるものであってもよい。また、油圧ショベル100は、作業機2の幅方向における目標掘削地形46Iのみに基づく掘削制御を実行できるものであってもよい。
以上、実施形態1及び実施形態2を説明したが、前述した内容により実施形態1及び実施形態2が限定されるものではない。また、前述した構成要素には、当業者が容易に想定できるもの、実質的に同一のもの、いわゆる均等の範囲のものが含まれる。さらに、前述した構成要素は適宜組み合わせることが可能である。さらに、実施形態1及び実施形態2の要旨を逸脱しない範囲で構成要素の種々の省略、置換及び変更のうち少なくとも1つを行うことができる。例えば、作業機2は、ブーム6、アーム7、バケット8を有しているが、作業機2に装着されるアタッチメントはこれに限られず、バケット8には限定されない。作業機械は油圧ショベル100に限定されず、例えば、ブルドーザ又はモータグレーダ等であってもよい。