(57)【要約】  操作装置（４５ａ，４５ｂ，４６ａ）から出力されたパイロット圧により作業機（１Ａ）の先端が目標面（６０）に接近している場合、作業機の先端が目標面に沿って移動するようにブームシリンダ（５）の制御信号を生成し、当該生成した制御信号をブームシリンダ（５）の流量制御弁（１５ａ）に出力することで作業機（１Ａ）を制御する制御コントローラ（４０）を備える油圧ショベル（１）において、制御コントローラは、作業機によって形成された出来形（９７）の位置情報を、作業機械の周辺地形を測定する地形計測装置（９６）から入力される地形情報を基に算出し、その算出した出来形の位置情報に基づいて出来形が目標面に近づくように制御信号を補正することとした。
2018051511.tif 000002
【特許請求の範囲】
【請求項１】
ブーム、アーム及びバケットを含む多関節型の作業機と、
前記ブーム、前記アーム及び前記バケットをそれぞれ駆動するブームシリンダ、アームシリンダ及びバケットシリンダと、
前記ブームシリンダ、前記アームシリンダ及び前記バケットシリンダの流量制御弁のうち少なくとも１つにオペレータの操作に応じた第１制御信号を出力する操作装置と、
前記第１制御信号により前記作業機の先端が目標面に接近している場合、前記作業機の先端が前記目標面に沿って移動するように前記ブームシリンダ、前記アームシリンダ及び前記バケットシリンダのうち少なくとも１つを動作させる第２制御信号を新たに又は前記第１制御信号を補正することで生成する制御信号演算部を有し、前記第１制御信号又は前記第２制御信号に基づいて前記ブームシリンダ、前記アームシリンダ及び前記バケットシリンダの流量制御弁を制御する制御装置を備える作業機械において、
前記制御装置は、前記第２制御信号を基に駆動された前記作業機によって形成された出来形の位置情報を、前記作業機械の周辺地形を測定する地形計測装置から入力される地形情報を基に算出する地形演算部をさらに有し、
前記制御信号演算部は、前記出来形の位置情報に基づいて前記出来形が前記目標面に近づくように前記第２制御信号を補正することを特徴とする作業機械。
【請求項２】
請求項１に記載の作業機械において、
前記制御信号演算部は、前記出来形の位置情報と前記目標面の位置情報の差が小さくなるように前記第２制御信号を補正することを特徴とする作業機械。
【請求項３】
請求項１に記載の作業機械において、
前記制御装置は、前記第２制御信号を基に駆動された前記作業機の先端が移動した軌跡の位置情報を算出する姿勢演算部をさらに有し、
前記制御信号演算部は、前記出来形の位置情報と前記軌跡の位置情報の差が小さくなるように前記第２制御信号を補正することを特徴とする作業機械。
【請求項４】
請求項１に記載の作業機械において、
前記制御信号演算部は、前記アームのクラウド動作を指示する制御信号が前記第１制御信号として前記操作装置から出力されて前記作業機の先端が前記目標面に接近している場合、前記作業機の先端が前記目標面に沿って移動するように前記ブームシリンダを動作させる制御信号を前記第２制御信号として生成することを特徴とする作業機械。
【請求項５】
請求項１に記載の作業機械において、
前記地形計測装置は、前記作業機械に搭載されていることを特徴とする作業機械。
【請求項６】
請求項１に記載の作業機械において、
前記地形計測装置は、前記作業機械の外部に備えられており、
前記地形計測装置で計測された地形情報は無線または有線により前記作業機械の前記制御装置に入力されていることを特徴とする作業機械。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は領域制限制御が実行可能な作業機械に関する。
【背景技術】
【０００２】
油圧ショベルには、オペレータの掘削操作を補助する制御システムが備えられることがある。具体的には、操作装置を介して掘削操作（例えば、アームクラウドの指示）が入力された場合、目標面と作業機の先端（例えばバケットの爪先）の位置関係を基に、作業機の先端の位置が目標面上及びその上方の領域内に保持されるように、作業機を駆動するブームシリンダ、アームシリンダ及びバケットシリンダのうち少なくともブームシリンダを強制的に動作させる制御（例えば、ブームシリンダを伸ばして強制的にブーム上げ動作を行う）を実行する制御システムがある。このような作業機の先端の動き得る領域を制限する制御システムの利用により掘削面の仕上げ作業や法面の成型作業が容易になる。以下では、この種の制御を「領域制限制御」または「マシンコントロール」と称することがある。【０００３】
この種の技術に関連して、特許文献１は、ブーム、アームおよびバケットのそれぞれに取り付けた角度検出器から出力される回動角情報に基づいてバケット先端の位置を演算し、予め設定した領域の境界（目標面）の近傍にバケット先端がある時、バケット先端と当該境界の距離が近づくほどバケット先端の垂直速度成分が減少するようにブームを制御する油圧ショベルを開示している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００２−１６７７９４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、領域制限制御に際して、特許文献１のようにブーム、アーム、バケットの角度検出器の情報からバケット先端の位置を演算する場合、その演算精度は各角度検出器の検出精度に依存する。その結果、領域制限制御によるバケット爪先の制御精度も角度検出器の精度に依存することとなり、角度検出器の精度が充分でない場合には目標面の施工精度を高めることができない。【０００６】
また、領域制限制御では、油圧シリンダの目標速度を算出し、その目標速度を当該油圧シリンダの流量制御弁のパイロット圧（制御信号）に変換する処理が行われることがあるが、当該処理に用いられる目標速度とパイロット圧の変換テーブルと、実際の油圧シリンダや流量制御弁等の機器の特性にズレがあると、バケット爪先の制御精度が低下する。さらに、当該処理で算出したパイロット圧を電磁比例弁の可変絞りで発生させることがあるが、当該電磁比例弁の制御精度が充分でない場合には、算出したパイロット圧を発生させることができず、バケット爪先の制御精度が低下する。【０００７】
さらに、経年変化等で可動部にガタが発生した場合に出荷時と同じ制御を継続して利用すると、制御が想定している可動部の動作が実際のものとズレるので、バケット爪先の制御精度が低下する。作業機械の個体差に起因した制御精度の低下も同様である。【０００８】
このように領域制限制御は種々の誤差及びその蓄積により作業機先端の制御精度が低下し、目標面の施工精度が低下するおそれがある。【０００９】
本発明の目的は、領域制限制御が実行可能な作業機械において、検出器の検出精度や作業機先端の制御精度等が充分でない場合にも、目標面の施工精度を高めることができる作業機械を提供することにある。
【課題を解決するための手段】
【００１０】
本願は上記課題を解決する手段を複数含んでいるが、その一例を挙げるならば、ブーム、アーム及びバケットを含む多関節型の作業機と、前記ブーム、前記アーム及び前記バケットをそれぞれ駆動するブームシリンダ、アームシリンダ及びバケットシリンダと、前記ブームシリンダ、前記アームシリンダ及び前記バケットシリンダの流量制御弁のうち少なくとも１つにオペレータの操作に応じた第１制御信号を出力する操作装置と、前記第１制御信号により前記作業機の先端が目標面に接近している場合、前記作業機の先端が前記目標面に沿って移動するように前記ブームシリンダ、前記アームシリンダ及び前記バケットシリンダのうち少なくとも１つを動作させる第２制御信号を新たに又は前記第１制御信号を補正することで生成する制御信号演算部を有し、前記第１制御信号又は前記第２制御信号に基づいて前記ブームシリンダ、前記アームシリンダ及び前記バケットシリンダの流量制御弁を制御する制御装置を備える作業機械において、前記制御装置は、前記第２制御信号を基に駆動された前記作業機によって形成された出来形の位置情報を、前記作業機械の周辺地形を測定する地形計測装置から入力される地形情報を基に算出する地形演算部をさらに有し、制御信号演算部は、前記出来形の位置情報に基づいて前記出来形が目標面に近づくように前記第２制御信号を補正することを特徴とする。
【発明の効果】
【００１１】
本発明によれば目標面の施工精度を高めることができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の第１の実施形態に係る油圧ショベルの構成図。
【図２】図１の油圧ショベルの制御コントローラを油圧駆動装置と共に示す図。
【図３】図２中のフロント制御用油圧ユニット１６０の詳細図。
【図４】図１の油圧ショベルの制御コントローラのハードウェア構成。
【図５】図１の油圧ショベルにおける座標系および目標面を示す図。
【図６】図１の油圧ショベルの制御コントローラの機能ブロック図。
【図７】図６中の領域制限制御部４３の機能ブロック図。
【図８】地形計測装置９６の設置箇所および計測範囲を示す図。
【図９】マシンコントロール時のアームの動作及びバケット爪先の移動軌跡の説明図。
【図１０】アーム角度別ブームパイロット圧演算部４３ｎによるアーム角度ごとのブームパイロット圧の算出結果を示した図。
【図１１】目標面６０と出来形９７の一例を示す図。
【図１２】目標面６０と出来形９７の距離とブーム上げパイロット圧の補正値との相関図。
【図１３】目標面６０と出来形９７の距離とブーム下げパイロット圧の補正値との相関図。
【図１４】制御コントローラ４０で実行される一連の処理のフローチャート。
【図１５】第２の実施形態における領域制限制御部４３の機能ブロック図。
【図１６】バケット爪先速度の垂直成分の制限値ａｙと距離Ｄとの関係を示す図。
【図１７】目標面６０と出来形９７と軌跡９８の一例を示す図。
【図１８】補正値演算部４３ｉで実行される一連の処理のフローチャート。
【図１９】制御コントローラ４０で実行される一連の処理のフローチャート。
【図２０】目標面に対する爪先の位置と垂直成分ｂｙの組み合わせごとの目標速度ベクトルＴの垂直成分ｔｙの違いを示す図。
【図２１】地形計測装置９６の設置箇所および計測範囲を示す図。
【図２２】地形計測装置９６の設置箇所および計測範囲を示す図。
【発明を実施するための形態】
【００１３】
以下、本発明の実施形態について図面を用いて説明する。なお、以下では、作業機の先端のアタッチメントとしてバケット１０を備える油圧ショベルを例示するが、バケット以外のアタッチメントを備える油圧ショベルで本発明を適用しても構わない。さらに、複数の被駆動部材（アタッチメント、アーム、ブーム等）を連結して構成され、所定の動作平面上で動作する多関節型の作業機を有するものであれば油圧ショベル以外の作業機械への適用も可能である。
【００１４】
また、本稿では、或る形状を示す用語（例えば、目標面、制御対象面等）とともに用いられる「上」、「上方」又は「下方」という語の意味に関し、「上」は当該或る形状の「表面」を意味し、「上方」は当該或る形状の「表面より高い位置」を意味し、「下方」は当該或る形状の「表面より低い位置」を意味することとする。また、以下の説明では、同一の構成要素が複数存在する場合、符号（数字）の末尾にアルファベットを付すことがあるが、当該アルファベットを省略して当該複数の構成要素をまとめて表記することがある。例えば、３つのポンプ３００ａ、３００ｂ、３００ｃが存在するとき、これらをまとめてポンプ３００と表記することがある。
【００１５】
＜第１実施形態＞
図１は本発明の第１の実施形態に係る油圧ショベルの構成図であり、図２は本発明の第１の実施形態に係る油圧ショベルの制御コントローラを油圧駆動装置と共に示す図であり、図３は図２中のフロント制御用油圧ユニット１６０の詳細図である。
【００１６】
図１において、油圧ショベル１は、多関節型のフロント作業機１Ａと車体１Ｂで構成されている。車体１Ｂは、左右の走行モータ３ａ，３ｂにより走行する下部走行体１１と、下部走行体１１の上に旋回可能に取り付けられた上部旋回体１２とからなる。フロント作業機１Ａは、垂直方向にそれぞれ回動する複数の被駆動部材（ブーム８、アーム９及びバケット１０）を連結して構成されており、フロント作業機１Ａのブーム８の基端は上部旋回体１２の前部に支持されている。
【００１７】
上部旋回体１２に搭載された原動機であるエンジン１８は、油圧ポンプ２とパイロットポンプ４８を駆動する。油圧ポンプ２はレギュレータ２ａによって容量が制御される可変容量型ポンプであり、パイロットポンプ４８は固定容量型ポンプである。本実施形態においては、パイロットライン１４４，１４５，１４６，１４７，１４８，１４９の途中にシャトルブロック１６２が設けられている。操作装置４５，４６，４７から出力された油圧信号が、このシャトルブロック１６２を介してレギュレータ２ａにも入力される。シャトルブロック１６２の詳細構成は省略するが、油圧信号がシャトルブロック１６２を介してレギュレータ２ａに入力されており、油圧ポンプ２の吐出流量が当該油圧信号に応じて制御される。
【００１８】
パイロットポンプ４８の吐出配管であるポンプライン１４８ａはロック弁３９を通った後、複数に分岐して操作装置４５，４６，４７及びフロント制御用油圧ユニット１６０内の各弁に接続している。ロック弁３９は本例では電磁切換弁であり、その電磁駆動部は運転室（図１）に配置されたゲートロックレバー（不図示）の位置検出器と電気的に接続している。ゲートロックレバーのポジションは位置検出器で検出され、その位置検出器からロック弁３９に対してゲートロックレバーのポジションに応じた信号が入力される。ゲートロックレバーのポジションがロック位置にあればロック弁３９が閉じてポンプライン１４８ａが遮断され、ロック解除位置にあればロック弁３９が開いてポンプライン１４８ａが開通する。つまり、ポンプライン１４８ａが遮断された状態では操作装置４５，４６，４７による操作が無効化され、旋回や掘削等の動作が禁止される。
【００１９】
ブーム８、アーム９、バケット１０及び上部旋回体１２はブームシリンダ５、アームシリンダ６、バケットシリンダ７及び旋回油圧モータ４（油圧アクチュエータ）によりそれぞれ駆動される被駆動部材を構成する。これら被駆動部材８，９，１０，１２への動作指示は、上部旋回体１２上の運転室内に搭載された走行右レバー２３ａ、走行左レバー２３ｂ、操作右レバー１ａおよび操作左レバー１ｂ（これらを操作レバー１、２３と総称することがある）のオペレータによる操作に応じて出力される。
【００２０】
運転室内には、走行右レバー２３ａを有する操作装置４７ａと、走行左レバー２３ｂを有する操作装置４７ｂと、操作右レバー１ａを共有する操作装置４５ａ、４６ａと、操作左レバー１ｂを共有する操作装置４５ｂ、４６ｂが設置されている。操作装置４５，４６，４７は、油圧パイロット方式であり、パイロットポンプから吐出される圧油をもとに、それぞれオペレータにより操作される操作レバー１、２３の操作量（例えば、レバーストローク）と操作方向に応じたパイロット圧（操作圧と称することがある）を発生する。このように発生したパイロット圧は、コントロールバルブユニット２０内の対応する流量制御弁１５ａ〜１５ｆ（図２参照）の油圧駆動部１５０ａ〜１５５ｂにパイロットライン１４４ａ〜１４９ｂ（図２参照）を介して供給され、これら流量制御弁１５ａ〜１５ｆを駆動する制御信号として利用される。
【００２１】
油圧ポンプ２から吐出された圧油は、流量制御弁１５ａ、１５ｂ、１５ｃ、１５ｄ、１５ｅ、１５ｆ（図２参照）を介して走行右油圧モータ３ａ、走行左油圧モータ３ｂ、旋回油圧モータ４、ブームシリンダ５、アームシリンダ６、バケットシリンダ７に供給される。供給された圧油によってブームシリンダ５、アームシリンダ６、バケットシリンダ７が伸縮することで、ブーム８、アーム９、バケット１０がそれぞれ回動し、バケット１０の位置及び姿勢が変化する。また、供給された圧油によって旋回油圧モータ４が回転することで、下部走行体１１に対して上部旋回体１２が旋回する。さらに、供給された圧油によって走行右油圧モータ３ａ、走行左油圧モータ３ｂが回転することで、下部走行体１１が走行する。
【００２２】
一方、ブーム８、アーム９、バケット１０の回動角度α、β、γ（図５参照）を測定可能なように、ブームピンにブーム角度センサ３０、アームピンにアーム角度センサ３１、バケットリンク１３にバケット角度センサ３２が取付けられ、上部旋回体１２には基準面（例えば水平面）に対する上部旋回体１２（車体１Ｂ）の前後方向の傾斜角θ（図５参照）を検出する車体傾斜角センサ３３が取付けられている。
【００２３】
運転室の前方上端部には、油圧ショベル１の周辺地形を測定する地形計測装置９６（図１及び図８参照）が取り付けられている。地形計測装置９６としては３次元レーザースキャナが利用できる。３次元レーザースキャナは、レーザー光線の照射角度と、そのレーザー光線が返ってくるまでの時間を出力し、その時間を変換して得られる距離と照射角度を基に地表面上の各点の位置情報（３次元座標）が算出される。当該各点の位置情報は油圧ショベル周辺の地形情報として制御コントローラ４０で利用される。なお、地形計測装置９６としては、測定対象までの距離が把握できれば良いので、例えば、２台のカメラの視差を利用したステレオカメラや、電波を用いるミリ波スキャナ等も利用可能である。また、地形計測装置９６の設置位置は運転室の前方上端部に限らず周辺地形の測定が可能な位置であれば適宜変更可能である。
【００２４】
本実施形態の油圧ショベルには、オペレータの掘削操作を補助する制御システムが備えられている。具体的には、操作装置４５ｂ，４６ａを介して掘削操作（具体的には、アームクラウド、バケットクラウド及びバケットダンプの少なくとも１つの指示）が入力された場合、目標面６０（図５参照）と作業機１Ａの先端（本実施形態ではバケット１０の爪先とする）の位置関係を基に、作業機１Ａの先端の位置が目標面６０上及びその上方の領域内に保持されるように油圧アクチュエータ５，６，７のうち少なくとも１つを強制的に動作させる制御信号（例えば、ブームシリンダ５を伸ばして強制的にブーム上げ動作を行う）を該当する流量制御弁１５ａ，１５ｂ，１５ｃに出力する掘削制御システムが備えられている。本稿ではこの制御を「領域制限制御」または「マシンコントロール」と称することがある。この制御によりバケット１０の爪先が目標面６０を越えることが防止されるので、オペレータの技量の程度に関わらず目標面６０に沿った掘削が可能となる。本実施形態では、領域制限制御に係る制御点を、油圧ショベルのバケット１０の爪先（作業機１Ａの先端）に設定している。制御点は作業機１Ａの先端部分の点であればバケット爪先以外にも変更可能である。例えば、バケット１０の底面や、バケットリンク１３の最外部も選択可能である。
【００２５】
本稿では、流量制御弁１５ａ〜１５ｃに対する制御信号のうち、操作装置４５ａ，４５ｂ，４６ａの操作によって発生したパイロット圧を「第１制御信号」と称し、制御コントローラ４０で電磁比例弁５４ｂ，５５ａ，５５ｂ，５６ａ，５６ｂを駆動して第１制御信号を補正（低減）して生成したパイロット圧と、制御コントローラ４０で電磁比例弁５４ｂ，５５ａ，５５ｂ，５６ａ，５６ｂを駆動して第１制御信号とは別に新たに生成したパイロット圧を「第２制御信号」と称することがある。
【００２６】
領域制限制御の実行が可能な掘削制御システムは、運転室内の操作パネルの上方などオペレータの視界を遮らない位置に設置され領域制限制御の有効無効を切り替えるマシンコントロールＯＮ／ＯＦＦスイッチ１７と、領域制限制御が実行可能なコンピュータである制御コントローラ（制御装置）４０とを備えている。
【００２７】
図３に示すように、フロント制御用油圧ユニット１６０は、ブーム８用の操作装置４５ａのパイロットライン１４４ａ、１４４ｂに設けられ、操作レバー１ａの操作量としてパイロット圧（第１制御信号）を検出する圧力センサ７０ａ、７０ｂ（図３参照）と、一次ポート側がポンプライン１４８ａを介してパイロットポンプ４８に接続されパイロットポンプ４８からのパイロット圧を減圧して出力する電磁比例弁５４ａ（図３参照）と、ブーム８用の操作装置４５ａのパイロットライン１４４ａと電磁比例弁５４ａの二次ポート側に接続され、パイロットライン１４４ａ内のパイロット圧と電磁比例弁５４ａから出力される制御圧（第２制御信号）の高圧側を選択し、流量制御弁１５ａの油圧駆動部１５０ａに導くシャトル弁８２ａ（図３参照）と、ブーム８用の操作装置４５ａのパイロットライン１４４ｂに設置され、制御コントローラ４０からの制御信号を基にパイロットライン１４４ｂ内のパイロット圧（第１制御信号）を低減して出力する電磁比例弁５４ｂ（図３参照）と、一次ポート側がパイロットポンプ４８に接続されパイロットポンプ４８からのパイロット圧を減圧して出力する電磁比例弁５４ｃ（図３参照）と、パイロットライン１４４ｂ内のパイロット圧と電磁比例弁５４ｃから出力される制御圧の高圧側を選択し、流量制御弁１５ａの油圧駆動部１５０ｂに導くシャトル弁８２ｂ（図３参照）を備えている。
【００２８】
また、フロント制御用油圧ユニット１６０は、アーム９用のパイロットライン１４５ａ、１４５ｂに設置され、操作レバー１ｂの操作量としてパイロット圧（第１制御信号）を検出して制御コントローラ４０に出力する圧力センサ７１ａ、７１ｂ（図３参照）と、パイロットライン１４５ｂに設置され、制御コントローラ４０からの制御信号を基にパイロット圧（第１制御信号）を低減して出力する電磁比例弁５５ｂ（図３参照）と、パイロットライン１４５ａに設置され、制御コントローラ４０からの制御信号を基にパイロットライン１４５ａ内のパイロット圧（第１制御信号）を低減して出力する電磁比例弁５５ａ（図３参照）と、一次ポート側がパイロットポンプ４８に接続されパイロットポンプ４８からのパイロット圧を減圧して出力する電磁比例弁５５ｃ（図３参照）と、パイロットライン１４５ａ内のパイロット圧と電磁比例弁５５ｃから出力される制御圧の高圧側を選択し、流量制御弁１５ｂの油圧駆動部１５１ａに導くシャトル弁８４ａ（図３参照）が設けられている。
【００２９】
また、フロント制御用油圧ユニット１６０は、バケット１０用のパイロットライン１４６ａ、１４６ｂには、操作レバー１ａの操作量としてパイロット圧（第１制御信号）を検出して制御コントローラ４０に出力する圧力センサ７２ａ、７２ｂ（図３参照）と、制御コントローラ４０からの制御信号を基にパイロット圧（第１制御信号）を低減して出力する電磁比例弁５６ａ、５６ｂ（図３参照）と、一次ポート側がパイロットポンプ４８に接続されパイロットポンプ４８からのパイロット圧を減圧して出力する電磁比例弁５６ｃ，５６ｄ（図３参照）と、パイロットライン１４６ａ、１４６ｂ内のパイロット圧と電磁比例弁５６ｃ，５６ｄから出力される制御圧の高圧側を選択し、流量制御弁１５ｃの油圧駆動部１５２ａ，１５２ｂに導くシャトル弁８３ａ，８３ｂ（図３参照）とがそれぞれ設けられている。なお、図３では、圧力センサ７０、７１、７２と制御コントローラ４０との接続線は紙面の都合上省略している。
【００３０】
上記のように構成されるフロント制御用油圧ユニット１６０において、制御コントローラ４０から制御信号を出力して電磁比例弁５４ａ，５４ｃ，５５ｃ，５６ｃ，５６ｄを駆動すると、操作装置４５ａ，４５ｂ，４６ａのオペレータ操作が無い場合にもパイロット圧（第２制御信号）を発生できるので、ブーム上げ動作、ブーム下げ動作、アームクラウド動作、バケットクラウド動作又はバケットダンプ動作を強制的に発生できる。また、これと同様に制御コントローラ４０により電磁比例弁５４ｂ，５５ａ，５５ｂ，５６ａ，５６ｂを駆動すると、操作装置４５ａ，４５ｂ，４６ａのオペレータ操作により発生したパイロット圧（第１制御信号）を減じたパイロット圧（第２制御信号）を発生することができ、ブーム下げ動作、アームクラウド／ダンプ動作、バケットクラウド／ダンプ動作の速度をオペレータ操作よりも強制的に低減できる。
【００３１】
制御コントローラ４０には、後述のＲＯＭ９３又はＲＡＭ９４に記憶された目標面６０の形状情報と位置情報、角度センサ３０〜３２と傾斜角センサ３３の検出信号、および圧力センサ７０〜７２の検出信号、が入力される。また制御コントローラ４０は領域制限制御を行うための制御信号（パイロット圧）の補正を行う電気信号を電磁比例弁５４〜５６に出力する。
【００３２】
図４に、制御コントローラ４０のハードウェア構成を示す。制御コントローラ４０は、入力部９１と、プロセッサである中央処理装置（ＣＰＵ）９２と、記憶装置であるリードオンリーメモリ（ＲＯＭ）９３及びランダムアクセスメモリ（ＲＡＭ）９４と、出力部９５とを有している。入力部９１は、作業機姿勢検出装置５０である角度センサ３０〜３２及び傾斜角センサ３３からの信号と、目標面６０を設定するための装置である目標面設定装置５１からの信号と、マシンコントロールＯＮ／ＯＦＦスイッチ１７からの信号と、操作装置４５ａ，４５ｂ，４６ａからの操作量を検出する圧力センサ（圧力センサ７０，７１，７２を含む）であるオペレータ操作検出装置５２ａからの信号を入力し、Ａ／Ｄ変換を行う。ＲＯＭ９３は、後述するフローチャートに係る処理を含め領域制限制御を実行するための制御プログラムと、当該フローチャートの実行に必要な各種情報等が記憶された記録媒体であり、ＣＰＵ９２は、ＲＯＭ９３に記憶された制御プログラムに従って入力部９１及びメモリ９３、９４から取り入れた信号に対して所定の演算処理を行う。出力部９５は、ＣＰＵ９２での演算結果に応じた出力用の信号を作成し、その信号を電磁比例弁５４〜５６または報知装置５３に出力することで、油圧アクチュエータ５〜７を駆動・制御したり、車体１Ｂ、バケット１０及び目標面６０等の画像を報知装置５３であるモニタの表示画面上に表示させたりする。
【００３３】
報知装置５３は、オペレータに目標面６０と作業機１Ａの位置関係を表示するディスプレイ（表示装置）、あるいは目標面６０と作業機１Ａの位置関係を音（音声も含む）により通達するスピーカの少なくとも一つから構成される。
【００３４】
なお、図４の制御コントローラ４０は、記憶装置としてＲＯＭ９３及びＲＡＭ９４という半導体メモリを備えているが、記憶装置であれば特に代替可能であり、例えばハードディスクドライブ等の磁気記憶装置を備えても良い。
【００３５】
図６は、本発明の実施形態に係る制御コントローラ４０の機能ブロック図である。制御コントローラ４０は、領域制限制御部４３と、電磁比例弁制御部４４を備えている。
【００３６】
本実施形態の領域制限制御部４３は、操作装置４５ｂから出力されたアーム８のクラウド動作を指示する制御信号（第１制御信号）によりバケット１０の爪先が目標面６０に接近している場合、バケット１０の爪先が目標面６０に沿って移動するようにブームシリンダ５（流量制御弁１５ａ）の制御信号（第２制御信号）を強制的に生成し、当該生成した制御信号を流量制御弁１５ａに出力することで作業機１Ａをマシンコントロールする処理を実行する。
【００３７】
領域制限制御部４３には、作業機姿勢検出装置５０、目標面設定装置５１及びマシンコントロールＯＮ／ＯＦＦスイッチ１７が接続されている。
【００３８】
作業機姿勢検出装置５０は、ブーム角度センサ３０、アーム角度センサ３１、バケット角度センサ３２、車体傾斜角センサ３３、から構成される。
【００３９】
目標面設定装置５１は、目標面６０に関する情報（各目標面の位置情報や傾斜角度情報を含む）を入力可能なインターフェースである。目標面設定装置５１を介した目標面の入力は、オペレータが手動で行っても、ネットワーク等を介して外部から取り込んでも良い。また、目標面設定装置５１にはＧＮＳＳ受信機等の衛星通信アンテナ（図示せず）が接続されている。グローバル座標系（絶対座標系）上に規定された目標面の３次元データを格納した外部端末とショベルがデータ通信可能な場合には、当該衛星通信アンテナにより特定したショベルのグローバル座標を基にショベル位置に対応する目標面を当該外部端末の３次元データ内で探索して取り込むことができる。
【００４０】
オペレータ操作検出装置５２ａは、オペレータによる操作レバー１ａ、１ｂ（操作装置４５ａ，４５ｂ，４６ａ）の操作によってパイロットライン１４４，１４５，１４６に生じる操作圧を取得する圧力センサ７０ａ，７０ｂ，７１ａ，７１ｂ，７２ａ，７２ｂから構成される。すなわち、作業機１Ａに係る油圧シリンダ５，６，７に対する操作を検出している。
【００４１】
図７は図６中の領域制限制御部４３の機能ブロック図である。領域制限制御部４３は、操作量演算部４３ａと、姿勢演算部４３ｂと、目標面演算部４３ｃと、地形演算部４３ｍと、アーム角度別ブームパイロット圧演算部４３ｎと、掘削操作判定部４３ｏと、目標パイロット圧演算部４３ｈと、補正値演算部４３ｉと、補正値記憶部４３ｊを備えている。
【００４２】
操作量演算部４３ａは、オペレータ操作検出装置５２ａからの入力を基に操作装置４５ａ，４５ｂ，４６ａ（操作レバー１ａ，１ｂ）の操作量を算出する。圧力センサ７０，７１，７２の検出値から操作装置４５ａ，４５ｂ，４６ａの操作量が算出できる。
【００４３】
なお、圧力センサ７０，７１，７２による操作量の算出は一例に過ぎず、例えば各操作装置４５ａ，４５ｂ，４６ａの操作レバーの回転変位を検出する位置センサ（例えば、ロータリーエンコーダ）で当該操作レバーの操作量を検出しても良い。また、操作量から動作速度を算出する構成に代えて、各油圧シリンダ５，６，７の伸縮量を検出するストロークセンサを取り付け、検出した伸縮量の時間変化を基に各シリンダの動作速度を算出する構成も適用可能である。
【００４４】
姿勢演算部４３ｂは作業機姿勢検出装置５０からの情報に基づき、作業機１Ａの姿勢およびバケット１０の爪先の位置を演算する。作業機１Ａの姿勢は図５のショベル座標系上に定義できる。図５のショベル座標系は、上部旋回体１２に設定された座標系であり、上部旋回体１２に回動可能に支持されているブーム８の基底部を原点とし、上部旋回体１２における垂直方向にＺ軸、水平方向にＸ軸を設定した。Ｘ軸に対するブーム８の傾斜角をブーム角α、ブーム８に対するアーム９の傾斜角をアーム角β、アームに対するバケット爪先の傾斜角をバケット角γとした。水平面（基準面）に対する車体１Ｂ（上部旋回体１２）の傾斜角を傾斜角θとした。ブーム角αはブーム角度センサ３０により、アーム角βはアーム角度センサ３１により、バケット角γはバケット角度センサ３２により、傾斜角θは車体傾斜角センサ３３により検出される。図５中に規定したようにブーム８、アーム９、バケット１０の長さをそれぞれＬ１，Ｌ２，Ｌ３とすると、ショベル座標系におけるバケット爪先位置の座標および作業機１Ａの姿勢はＬ１，Ｌ２，Ｌ３，α，β，γで表現できる。
【００４５】
目標面演算部４３ｃは、目標面設定装置５１からの情報に基づき目標面６０の位置情報を演算し、これをＲＯＭ９３内に記憶する。本実施形態では、図５に示すように、３次元の目標面を作業機１Ａが移動する平面（作業機の動作平面）で切断した断面形状を目標面６０（２次元の目標面）として利用する。
【００４６】
地形演算部４３ｍは、地形計測装置９６から入力される複数の照射角度及び距離の情報に基づき、地表面上の各点の位置情報（座標）を演算し、これを地形情報としてＲＯＭ９３内に記憶する。つまり、地形演算部４３ｍは、第２制御信号を基にマシンコントロールされた作業機１Ａにより形成された地形（以下、「出来形」と称することがある）の位置情報を地形計測装置９６から入力される地形情報を基に算出する。
【００４７】
掘削操作判定部４３ｏは、操作量演算部４３ａから入力される操作量を基に、掘削操作（本実施形態では、アームクラウド操作、つまりアームシリンダ６の伸び操作）が操作装置４５ｂを介して入力されているかどうかを判定し、その判定結果を目標パイロット圧演算部４３ｈに出力する。
【００４８】
アーム角度別ブームパイロット圧演算部４３ｎは、その時（処理実行時）の作業機１Ａの姿勢において所定のパイロット圧（例えば操作レバー１ｂの操作量が最大のときのパイロット圧）のアームクラウド操作が入力されたと仮定し、そのアームクラウド操作に対してマシンコントロールによるブームの強制動作を介入させて目標面６０に沿ったバケット爪先の移動を実現するために、各アーム角度βで出力すべきブームパイロット圧（第２制御信号）の一連の値を算出する部分である。算出結果はＲＯＭ９３内に記憶される。なお、アーム角度ごとのブームパイロット圧の算出に代えて、ブームパイロット圧をアーム角度の関数で表した式を導出し、それをＲＯＭ９３に記憶しても良い。
【００４９】
図９を用いてアーム角度別ブームパイロット圧演算部４３ｎによる処理の具体例の１つを説明する。なお、ここでは説明を簡略化するためバケット１０は動作しないものとする。
【００５０】
まず、アーム角度別ブームパイロット圧演算部４３ｎは、姿勢演算部４３ｂで算出された作業機１Ａの姿勢情報及びバケット１０の爪先の位置情報と、目標面演算部４３ｃで演算された目標面６０の位置情報とを基に、その時のバケット爪先と目標面６０の位置関係と作業機１Ａの姿勢を把握する。これにより、処理開始時に、バケット爪先（Ｐ１）、アーム回動中心（Ｃａ１）および目標面６０が図９に示した位置関係に在ると把握できたとする。アーム角度別ブームパイロット圧演算部４３ｎは、この状態からパイロット圧が所定値（例えば操作レバー１ｂの操作量が最大のときのパイロット圧力値）のアームクラウド操作が入力されたと仮定し、そのときのバケット爪先の軌跡である円弧Ｔｒ１を算出する。次に円弧Ｔｒ１と目標面６０の交点を算出する。図９の場合、両者の交点としてＰ２が存在するので、その交点Ｐ２以降のアーム角度について、所定値のパイロット圧によるアームクラウド動作に対してマシンコントロールによるブーム制御（マシンコントロール）を加えてバケット爪先１０が目標面に沿って移動させること（すなわち、図９の直線ＴＬ上を移動させること）を想定し、その場合にマシンコントロールにより出力すべきブームパイロット圧をアーム角度ごとに算出する。なお、爪先の軌跡（円弧）と目標面６０が交差しない場合は、すべてのアーム角度についてブームパイロット圧を０とし、マシンコントロールは行わないものとする。
【００５１】
また、アーム角度別ブームパイロット圧演算部４３ｎは、交点（Ｐ２）以降のアーム角度について、アーム動作に起因するバケット爪先の速度ベクトル（爪先が位置する点での円弧の接線方向のベクトル）の目標面６０に垂直な成分（図中の下向きを負、上向きを正とする）が負から正に変化する点を探索し、Ｐ２からその点まではブーム上げのパイロット圧を算出し、その点以降はブーム下げのパイロット圧を算出する。図９の場合、当該速度ベクトルの垂直成分は点Ｐ３で負から正に変わるので、点Ｐ２から点Ｐ３までは電磁比例弁５４ａにより発生させるブーム上げのパイロット圧を、点Ｐ３から点Ｐ４までは電磁比例弁５４ｃにより発生させるブーム下げのパイロット圧を算出する。なお、図９中のＴｒ２は点Ｐ３での円弧であり、Ｔｒ３は点ｐ４での円弧である。
【００５２】
図１０は、アーム角度別ブームパイロット圧演算部４３ｎによる図９の場合のアーム角度ごとのブームパイロット圧の算出結果を示した図である。図１０では、図９の点Ｐ２、Ｐ３、Ｐ４におけるアーム角度をそれぞれβ２、β３、β４としている。この図に示すように点Ｐ２でブーム上げパイロット圧が発生し、点Ｐ３で一旦ゼロになった後は、点Ｐ４までブーム下げパイロット圧が発生している。これにより、図９に示すように、点Ｐ２でＣａ１に在ったアーム回動中心はブーム上げによって上方に移動して点Ｐ３でＣａ２に達し、その後、ブーム下げによって下方に移動して点Ｐ４でＣａ３に達する。
【００５３】
補正値演算部４３ｉは、マシンコントロール発動時のブームパイロット圧（第２制御信号）の補正値を算出する部分である。補正値演算部４３ｉは、目標面演算部４３ｃの目標面６０の情報と地形演算部４３ｍの地形情報を基に、目標面６０と出来形の上下関係を同じ座標系上で把握し（すなわちショベル座標系又はグローバル座標系で把握し、必要があれば適宜座標変換を行う（以下の同様の処理でも同様とする））、目標面６０と出来形の距離に応じて補正値を演算する。図１１に目標面６０と出来形９７の一例を示す。目標面６０と出来形９７の距離は、目標面６０の垂直方向における目標面６０と出来形９７の距離とし、目標面６０の位置を基準（ゼロ）とする。目標面６０より下方を正、上方を負とする。したがって図１１の場合は正となる。通常、出来形９７は目標面６０からの垂直距離の異なる複数の点から形成されるため、本実施の形態では出来形９７を形成する複数の点のそれぞれについて目標面６０との距離を算出し、その算出した複数の距離の平均値を目標面６０と出来形９７の距離とする。ただし、目標面６０と出来形９７の「距離」の算出はこの方法に限らず、例えば、出来形９７を形成する複数の点から任意に選択した点と目標面６０との距離を「距離」として利用しても良いし、出来形９７を目標面６０に平行な直線に近似し、当該直線と目標面の距離を「距離」として利用しても良い。
【００５４】
補正値演算部４３ｉは、算出した目標面６０と出来形９７の距離と、図１２及び図１３を利用してブーム上げとブーム下げ双方のパイロット圧（第２制御信号）の補正値を算出し、算出した２つの補正値を補正値記憶部４３ｊに記憶する。図１２は目標面６０と出来形９７の距離とブーム上げパイロット圧の補正値との相関図であり、ブーム上げパイロット圧の補正値は、目標面６０と出来形９７の距離が増加するほど増加するように設定されている。図１３は目標面６０と出来形９７の距離とブーム下げパイロット圧の補正値との相関図であり、ブーム下げパイロット圧の補正値は、目標面６０と出来形９７の距離が増加するほど減少するように設定されている。
【００５５】
補正値記憶部４３ｊは、補正値演算部４３ｉによる演算結果を記憶する部分である。記憶された補正値は、補正値演算部４３ｉによる補正値演算の度に上書きされ、マシンコントロールが発動するタイミングで目標パイロット圧演算部４３ｈに参照される。
【００５６】
目標パイロット圧演算部４３ｈは、アームクラウド操作がされている場合、所定のアームクラウドパイロット圧を流量制御弁１５ｂの目標パイロット圧として電磁比例弁制御部４４に出力し、アーム角度別ブームパイロット圧演算部４３ｎの演算結果を基に決定したブームパイロット圧を流量制御弁１５ａの目標パイロット圧として電磁比例弁制御部４４に出力する。
【００５７】
具体的には、目標パイロット圧演算部４３ｈは、掘削操作判定部４３ｏからアームクラウド操作がされているという判定結果が入力されたら、その判定結果が入力されている間、操作装置４５ｂによるアームクラウドの操作量に関わらず一定値をアームクラウドパイロット圧として電磁比例弁制御部４４に出力する。そして、アーム角度別ブームパイロット圧演算部４３ｎで算出したアーム角度別のブームパイロット圧（第２制御信号）と、姿勢演算部４３ｂで算出したアーム角度とを基に、そのときのアーム角度におけるブームパイロット圧を決定する。さらに、当該決定したブームパイロット圧（第２制御信号）がゼロでない場合（すなわち、マシンコントロールが発動される場合）には、補正値記憶部４３ｊに記憶された補正値を参照し、当該決定したブームパイロット圧の値に当該補正値を加えた値をブームパイロット圧として電磁比例弁制御部４４に出力する。
【００５８】
なお、目標パイロット圧演算部４３ｈは、アームクラウド操作がされていないという判定結果が掘削操作判定部４３ｏから入力された場合には、操作量演算部４３ａの演算結果に基づいてオペレータ操作に従ったパイロット圧を対応する流量制御弁１５に出力するように構成されている。
【００５９】
電磁比例弁制御部４４は、目標パイロット圧演算部４３ｈで算出された各流量制御弁１５ａ，１５ｂへの目標パイロット圧を基に、各電磁比例弁５５ｃ，５４ａ，５４ｃへの指令を演算する。
【００６０】
＜動作＞
次に上記のように構成される油圧ショベルの動作について図１４のフローチャートを用いて説明する。制御コントローラ４０は所定の制御周期で図１４のフローチャートを実行する。
【００６１】
まず、Ｓ１１０で、アーム角度別ブームパイロット圧演算部４３ｎは、作業機姿勢検出装置５０からの情報に基づき姿勢演算部４３ｂで演算された作業機１Ａの姿勢およびバケット１０の爪先の位置と、目標面設定装置５１からの情報に基づき目標面演算部４３ｃで演算された目標面６０の位置を入力する。
【００６２】
Ｓ１２０では、アーム角度別ブームパイロット圧演算部４３ｎは、Ｓ１１０で入力した情報を基に、所定のアームパイロット圧（例えば、操作レバー１ｂの操作量が最大のときのパイロット圧力値）でアームクラウドしたときに目標面６０に沿ってバケット１０の爪先が移動するように、アーム角度ごとのブームパイロット圧を算出する。なお、アームクラウドしても目標面６０にバケット爪先が到達しない場合（アームクラウド時の爪先の軌跡が目標面６０と交差しない場合）にはマシンコントロールを発動する必要がないので、全てのアーム角度についてブームパイロット圧を０に設定する。
【００６３】
Ｓ１３０では、掘削操作判定部４３ｏは、操作量演算部４３ａから入力した操作量を基にアームクラウド操作が操作装置４５ｂを介して入力されているかどうかの判定を行う。ここでアームクラウド操作が入力されていると判定された場合にはＳ１４０に進み、アームクラウド操作は入力されていないと判定された場合にはＳ２２０に進む。
【００６４】
Ｓ２２０では、目標パイロット圧演算部４３ｈは、操作量演算部４３ａから入力した操作量に即した各油圧シリンダの目標パイロット圧を演算し、電磁比例弁制御部４４に出力する。これにより操作装置４５，４６に対する入力操作に即して作業機１Ａが動作する。
【００６５】
Ｓ１４０では、アーム角度別ブームパイロット圧演算部４３ｎは、姿勢演算部４３ｂからその時のアーム角βを入力し、Ｓ１２０で算出したアーム角度ごとのブームパイロット圧を基に、入力したアーム角度βに応じたブームパイロット圧を算出し、Ｓ１５０に進む。
【００６６】
Ｓ１５０では、目標パイロット圧演算部４３ｈは、Ｓ１４０で算出されたブームパイロット圧が０かどうかを判定する。Ｓ１５０でブームパイロット圧が０でないと判定された場合（すなわちマシンコントロールが発動する場合）にはＳ１６０に進む。
【００６７】
Ｓ１６０では、目標パイロット圧演算部４３ｈは、Ｓ１４０で算出されたブームパイロット圧がブーム上げのものかブーム下げのものかを判定する。そして、補正値記憶部４３ｊに記憶されたブーム上げの補正値とブーム下げの補正値のうち判定結果に対応する補正値を取得し、その補正値をＳ１４０で算出したブームパイロット圧に加算し、Ｓ１７０に進む。
【００６８】
一方、Ｓ１５０でブームパイロット圧が０と判定された場合には、マシンコントロールによるブーム制御が行われないため、Ｓ１６０で補正値を加算することなくＳ１７０に進む。
【００６９】
Ｓ１７０では、目標パイロット圧演算部４３ｈは、Ｓ１２０のアームパイロット圧を発生させる指令（本実施形態では、電磁比例弁５５ｃが全開する指令）を電磁比例弁制御部４４に出力する。また、Ｓ１６０を経由した場合（つまりマシンコントロールが発動した場合）はＳ１６０のブームパイロット圧を、Ｓ１６０を経由しなかった場合（つまりマシンコントロールが発動しなかった場合）はブームパイロット圧としてゼロを電磁比例弁制御部４４に出力する。
【００７０】
これにより、電磁比例弁５５ｃが全開してアームクラウド操作量が最大時に相当するパイロット圧が流量制御弁１５ｂの駆動部１５１ａに作用し、アームクラウド動作が行われる。そして、Ｓ１６０を経由した場合には、電磁比例弁５４ａまたは５４ｃが開いてＳ１６０のブームパイロット圧が発生しマシンコントロールによるブーム動作が行われる。そしてこのブーム動作とアームクラウド動作が組み合わさることで目標面６０に沿ったバケット爪先の水平引きが実現され、オペレータの技量の程度に依らず目標面６０に沿った正確な掘削が実現される。一方、Ｓ１６０を経由しなかった場合にはブームパイロット圧は０なので、アームクラウド動作のみが行われることになる。
【００７１】
Ｓ１８０では、掘削操作判定部４３ｏは、操作量演算部４３ａから入力した操作量を基にアームクラウド操作が入力されているかどうかの判定を行う。ここでアームクラウド操作が入力されている（すなわちアームクラウド操作は継続している）と判定された場合にはＳ１４０に戻りマシンコントロールを継続する。一方、アームクラウド操作は入力されていない（すなわちアームクラウド操作が終了した）と判定された場合にはＳ１９０に進む。
【００７２】
Ｓ１９０では、補正値演算部４３ｉは、バケット１０による地形の掘削があったか否かの判定を行う。この判定の方法としては、アームクラウド操作の前後で地形の変化の有無を地形計測装置９６の測定結果を基に比較するものがある。また、マシンコントロールが発動した場合（すなわち、Ｓ１６０を経由して電磁比例弁制御部４４にブームパイロット圧が出力された場合）には地形の掘削があったとみなす方法を採用しても良い。Ｓ１９０で掘削が有ったと判定された場合には、Ｓ２００で地形演算部４３ｍが演算した地形情報（地形データ）を入力してＳ２１０に進む。一方、Ｓ１９０で掘削が無かったと判定された場合には、次回の制御周期を待ってＳ１１０以降の処理を繰り返す。
【００７３】
Ｓ２１０では、補正値演算部４３ｉは、まず、目標面演算部４３ｃの目標面６０の情報と地形演算部４３ｍの地形情報を基に、出来形９７を形成する複数の点のそれぞれについて目標面６０との距離を算出する。そして、その算出した複数の距離の平均値を目標面６０と出来形９７の距離とする。次に補正値演算部４３ｉは、算出した目標面６０と出来形９７の距離と、図１２及び図１３で定義された距離とブームパイロット圧（第２制御信号）の相関関係を基に、出来形が目標面６０に近づくようにブーム上げ時とブーム下げ時の両方のパイロット圧の補正値を演算し、その演算結果を補正値記憶部４３ｊに記憶する。
【００７４】
例えば、目標面６０と出来形９７の距離が正の場合は、目標面６０の下方に出来形９７が位置するいわゆる掘り過ぎの場面であるが、この場合には、ブーム上げでパイロット圧を増加し、ブーム下げでパイロット圧を減少する補正値が補正値演算部４３ｉにより算出される。このような補正値でＳ１４０のブームパイロット圧を補正すると、次回のＳ１７０の処理時に補正前よりも爪先の描く軌跡が上方に移動して掘り過ぎが防止されるので、出来形を目標面６０に近づけることができる。一方、目標面６０と出来形９７の距離が負の場合は、目標面６０の上方に出来形９７が位置するいわゆる掘り残しが存在する場面であるが、この場合には、ブーム上げでパイロット圧を減少し、ブーム下げでパイロット圧を増加する補正値が補正値演算部４３ｉにより算出される。このような補正値でブームパイロット圧を補正すると補正前よりも爪先の描く軌跡が下方に移動して掘り残しの発生が防止されるので、出来形を目標面６０に近づけることができる。
【００７５】
Ｓ２１０の処理が終了したら、次回の制御周期を待ってＳ１１０以降の処理を繰り返す。
【００７６】
＜効果＞
次の本実施形態の効果を説明する。上記の実施形態では、ブーム８、アーム９及びバケット１０を含む多関節型の作業機１Ａと、ブーム８、アーム９及びバケット１０をそれぞれ駆動するブームシリンダ５、アームシリンダ６及びバケットシリンダ７と、これら油圧シリンダ５，６，７の流量制御弁１５ａ，１５ｂ，１５ｃの少なくとも１つにオペレータの操作に応じた制御信号（第１制御信号）を出力する操作装置４５ａ，４５ｂ，４６ａと、操作装置４５ａ，４５ｂ，４６ａから出力された制御信号（第１制御信号）により作業機１Ａの先端（バケット爪先）が目標面６０に接近している場合、作業機１Ａの先端が目標面６０に沿って移動するようにブームシリンダ５を動作させる制御信号（第２制御信号）を新たに生成する目標パイロット圧演算部（制御信号演算部）４３ｈを有し、第１制御信号又は第２制御信号に基づいてブームシリンダ５、アームシリンダ６及びバケットシリンダ７の流量制御弁１５ａ，１５ｂ，１５ｃを制御する制御コントローラ４０を備える油圧ショベル１において、制御コントローラ４０は、第２制御信号を基に駆動された作業機１Ａによって形成された出来形９７の位置情報を、油圧ショベル１の周辺地形を測定する地形計測装置９６から入力される地形情報を基に算出する地形演算部４３ｍをさらに有し、目標パイロット圧演算部４３ｈは、出来形９７の位置情報に基づいて出来形９７が目標面６０に近づくように第２制御信号を補正することとした。そして、この第２制御信号の補正に際して、本実施形態では、目標パイロット圧演算部４３ｈが、出来形９７の位置情報と目標面６０の位置情報の差が小さくなるように第２制御信号を補正することとした。
【００７７】
このように構成した油圧ショベルによれば、掘削の都度、出来形９７が目標面６０に近づくようにブームシリンダ５（流量制御弁１５ａ）の制御信号（第２制御信号）が補正され、出来形９７と目標面６０の位置情報の差が小さくなるので、角度センサ３０，３１，３２の検出精度が充分でない場合や、個体差・経年変化等により作業機先端の制御精度が充分でない場合等にも、バケット１０の爪先を目標面６０に沿わせながら掘削できる。その結果、目標面６０の施工精度を高めることができる。
【００７８】
＜付記＞
なお、上記では、アームクラウド動作中にバケット爪先が目標面６０に接近した場合、マシンコントロールによりバケット爪先が目標面６０に沿って移動するようにブームシリンダ５の制御信号（第２制御信号）を生成する場合について説明したが、マシンコントールに際して生成する制御信号（第２制御信号）はブームシリンダ５のものに限らず、アームシリンダ６及びバケットシリンダ７の制御信号（第２制御信号）を生成しても良い。すなわち、バケット爪先が目標面６０に沿って移動するものであれば、ブームシリンダ５、アームシリンダ６及びバケットシリンダ７の少なくとも１つの制御信号を生成して作業機１Ａを制御しても良い。この場合、補正値を算出するのは、マシンコントロールの実現のために制御信号を生成した油圧シリンダ（すなわち油圧シリンダ５，６，７の少なくとも１つ）に係る制御信号であることは言うまでも無い。
【００７９】
上記では、マシンコントロールの発動の条件を、オペレータによるアームクラウド操作と、バケット爪先の軌跡と目標面の交差としたが、これにオペレータによるブーム下げ操作を加えても良い。この場合、マシンコントロールによるブーム上げが必要になったときには、オペレータ操作によるブーム下げパイロット圧は制御コントローラ４０により電磁比例弁５４ｂを閉じてキャンセルし、必要なブームパイロット圧を電磁比例弁５４ａで発生すれば良い。また、マシンコントロールによるブーム下げが必要になったときには、例えば、オペレータ操作によるブーム下げパイロット圧を同様にキャンセルするとともに電磁比例弁５４ｃでマシンコントロールに必要なパイロット圧を発生させるようにすれば良いし、マシンコントロールに必要なブーム下げパイロット圧がオペレータ操作によるパイロット圧より小さければ、電磁比例弁５４ｂの開度を適宜低減してその必要なパイロット圧を発生させても良い。
【００８０】
上記では、マシンコントロールによる掘削に際して、ブームの上げと下げの双方を実施する例を説明したが、ブームの上げと下げのうち一方を行うように油圧ショベルを構成しても良い。
【００８１】
＜第２実施形態＞
続いて本発明の第２の実施形態について説明する。本実施形態は、図１−４及び図６に示した第１の実施形態と同じハードウェア構成を備えており、主に制御コントローラ４０の機能が第１の実施形態と異なる。以下では第１実施形態と異なる部分について主に説明する。
【００８２】
図１５は本実施形態に係る領域制限制御部４３の機能ブロック図である。領域制限制御部４３は、操作量演算部４３ａと、姿勢演算部４３ｂと、目標面演算部４３ｃと、シリンダ速度演算部４３ｄと、バケット先端速度演算部４３ｅと、目標バケット先端速度演算部４３ｆと、目標シリンダ速度演算部４３ｇと、目標パイロット圧演算部４３ｈと、地形演算部４３ｍと、補正値演算部４３ｉと、補正値記憶部４３ｊを備えている。このうち、操作量演算部４３ａ、姿勢演算部４３ｂ、目標面演算部４３ｃ、地形演算部４３ｍ及び補正値記憶部４３ｊについては第１実施形態と同じなので説明は省略する。
【００８３】
シリンダ速度演算部４３ｄは、操作量演算部４３ａで演算された操作量（第１制御信号）を基に各油圧シリンダ５，６，７の動作速度（シリンダ速度）を演算する。各油圧シリンダ５，６，７の動作速度は、操作量演算部４３ａで演算された操作量と、流量制御弁１５ａ，１５ｂ，１５ｃの特性と、各油圧シリンダ５，６，７の断面積と、油圧ポンプ２の容量（傾転角）と回転数を乗じて得られるポンプ流量（吐出量）等から算出できる。
【００８４】
バケット先端速度演算部４３ｅは、シリンダ速度演算部４３ｄで演算された各油圧シリンダ５，６，７の動作速度と、姿勢演算部４３ｂで演算された作業機１Ａの姿勢とを基に、オペレータ操作（第１制御信号）によるバケット先端（爪先）の速度ベクトルＢを演算する。バケット先端の速度ベクトルＢは、目標面演算部４３ｃから入力される目標面６０の情報を基に、目標面６０に水平な成分ｂｘと垂直な成分ｂｙに分解できる。
【００８５】
目標バケット先端速度演算部４３ｆは、バケット先端（爪先）の目標速度ベクトルＴを演算する。そのために、目標バケット先端速度演算部４３ｆは、まず、バケット先端から制御対象の目標面６０までの距離Ｄ（図５参照）と図１６のグラフを基にバケット先端の速度ベクトルの目標面６０に垂直な成分の制限値ａｙを算出する。制限値ａｙの計算は、図１６に示すような制限値ａｙと距離Ｄとの関係を定義した関数又はテーブル等の形式で制御コントローラ４０のＲＯＭ９３に記憶しておき、この関係を適宜読み出して行う。距離Ｄは、姿勢演算部４３ｂで演算したバケット１０の爪先の位置（座標）と、ＲＯＭ９３に記憶された目標面６０を含む直線の距離から算出できる。なお、制限値ａｙと距離Ｄとの関係は、距離Ｄの増加とともに制限値ａｙが単調減少する特性を有することが好ましいが、図１６に示したものに限らない。例えば、距離Ｄが正の所定値以上または負の所定値以下で制限値ａｙが個別の所定値に保持されるようにしても良いし、制限値ａｙと距離Ｄの関係を曲線で定義しても良い。
【００８６】
次に目標バケット先端速度演算部４３ｆは、バケット先端の速度ベクトルＢの目標面６０に垂直な成分ｂｙを取得し、この垂直成分ｂｙと制限値ａｙの正負と絶対値の大小関係を基に、マシンコントロールによるブーム８の動作で発生すべきバケット先端の速度ベクトルＣの目標面６０に垂直な成分ｃｙを算出するために必要な式を選択する（式の選択過程については図１９を用いて後述する）。そして、その選択した式から垂直成分ｃｙを算出し、その垂直成分ｃｙを発生する際にブームに許容される動作から水平成分ｃｘを算出するとともに、速度ベクトルＢ，Ｃと制限値ａｙから目標速度ベクトルＴを算出する。以下では、目標速度ベクトルＴにおいて目標面６０に垂直な成分をｔｙ、水平な成分をｔｘとし、目標ベクトルＴの導出過程についても図１９を用いて後述する。
【００８７】
目標シリンダ速度演算部４３ｇは、目標バケット先端速度演算部４３ｆで算出された目標速度ベクトルＴ（ｔｘ，ｔｙ）を基に各油圧シリンダ５，６，７の目標速度を演算する。本実施形態では、目標速度ベクトルＴを、オペレータ操作による速度ベクトルＢと、マシンコントロールによる速度ベクトルＣの和で定義しているので、ブームシリンダ５の目標速度は速度ベクトルＣから演算できる。これにより、バケット先端の目標速度ベクトルＴは、各油圧シリンダ５，６，７を目標速度で動作させたときにバケット先端に表れる速度ベクトルの合成値となる。なお、マシンコントロールによる速度ベクトルＣの垂直成分ｃｙがゼロの場合、目標シリンダ速度演算部４３ｇは、バケット先端速度演算部４３ｅで算出したバケット先端の速度ベクトルＢを基に各油圧シリンダ５，６，７の目標速度を算出する。
【００８８】
マシンコントロールＯＮ／ＯＦＦスイッチ１７の切り換え位置が領域制限制御の有効を示すＯＮ位置の場合には、目標シリンダ速度演算部４３ｇは上記の演算結果を目標パイロット圧演算部４３ｈに出力する。しかし、マシンコントロールＯＮ／ＯＦＦスイッチ１７の切り換え位置が領域制限制御の無効を示すＯＦＦ位置の場合には、目標シリンダ速度演算部４３ｇは、シリンダ速度演算部４３ｄの演算結果を目標パイロット圧演算部４３ｈに出力する。
【００８９】
補正値演算部４３ｉは、第１実施形態と同様に、マシンコントロール発動時のブームパイロット圧（第２制御信号）の補正値を算出する部分である。ただし、本実施形態の補正値演算部４３ｉは、マシンコントロールにより作業機１Ａの先端（バケット爪先）が移動した軌跡の位置情報（この位置情報は姿勢演算部４３ｂから入力する）と、地形演算部４３ｍの地形情報とを基に、軌跡と出来形９７の上下関係を同一座標系上で把握し、当該軌跡と出来形９７の距離に応じて補正値を演算する。なお、ここでいう「軌跡」とは、姿勢演算部４３ｂから入力したバケット爪先の軌跡であり、例えば３次元レーザースキャナ等によりショベル座標系と独立した座標系上で爪先の軌跡を計測したもの等ではなく、あくまで制御コントローラ４０が把握している爪先の位置情報の集合である。
【００９０】
図１７にバケット爪先の軌跡９８と出来形９７の一例を示す。図１７の例は、制御コントローラ４０内の演算では目標面６０に沿った軌跡９８で掘削を行っているつもりであるが、センサ精度や制御精度の低下等の影響により結果的に目標面６０の下方に出来形９７が形成された場合を模式的に示している。軌跡９８と出来形９７の距離は、目標面６０の垂直方向における軌跡９８と出来形９７の距離とし、軌跡９８の位置を基準（ゼロ）とする。軌跡９８より下方を正、上方を負とする。したがって図１７の場合は正となる。通常、軌跡９８及び出来形９７は目標面６０からの垂直距離の異なる複数の点から形成されるため、本実施の形態では軌跡９８及び出来形９７を形成する複数の点のそれぞれについて目標面６０との距離を算出し、その算出した複数の距離の平均値から軌跡９８と出来形９７の位置を特定し、その位置から軌跡９８と出来形９７の距離を算出する。ただし、目標面６０と出来形９７の「距離」の算出はこの方法に限らず、例えば、出来形９７を形成する複数の点から任意に選択した点と軌跡９８を形成する複数の点から任意に選択した点との距離を「距離」として利用しても良いし、軌跡９８及び出来形９７を目標面６０に平行な直線に近似し、当該２本の近似直線の距離を「距離」として利用しても良い。
【００９１】
ところで、後述する図１９のフローチャートによる処理の関係上、本実施形態ではマシンコントロールによりブーム上げのみが行われ、ブーム下げは行われない。そこで、本実施形態の補正値演算部４３ｉは、算出した軌跡９８と出来形９７の距離と、図１２を利用してブーム上げのパイロット圧の補正値を算出し、算出した補正値を補正値記憶部４３ｊに記憶する。
【００９２】
目標パイロット圧演算部４３ｈは、目標シリンダ速度演算部４３ｇで算出された各シリンダ５，６，７の目標速度を基に各油圧シリンダ５，６，７の流量制御弁１５ａ，１５ｂ，１５ｃへの目標パイロット圧を演算する。このうちアームシリンダ６及びバケットシリンダ７の目標パイロット圧はそのまま電磁比例弁制御部４４に出力する。残りのブームシリンダ５の目標パイロット圧については、その値がゼロでない場合（すなわち、マシンコントロールが発動される場合）には、補正値記憶部４３ｊに記憶された補正値を参照し、当該決定したブームパイロット圧の値に当該補正値を加えた値をブームパイロット圧として電磁比例弁制御部４４に出力する。
【００９３】
電磁比例弁制御部４４は、目標パイロット圧演算部４３ｈで算出された各流量制御弁１５ａ，１５ｂ，１５ｃへの目標パイロット圧を基に、各電磁比例弁５４〜５６への指令を演算する。なお、オペレータ操作に基づくパイロット圧（第１制御信号）と、目標パイロット圧演算部４３ｈで算出された目標パイロット圧が一致する場合には、該当する電磁比例弁５４〜５６への電流値（指令値）はゼロとなり、該当する電磁比例弁５４〜５６の動作は行われない。
【００９４】
＜動作＞
次に上記のように構成される油圧ショベルの動作について図１８及び図１９のフローチャートを用いて説明する。
【００９５】
図１８は補正値演算部４３ｉで実行される処理のフローチャートである。このフローチャートは操作量演算部４３ａでアームクラウド操作が検出されたら開始される。
【００９６】
Ｓ３１０では、補正値演算部４３ｉは、操作量演算部４３ａからの入力値を基にアームクラウド操作が終了したか否かを判定する。アームクラウド操作が終了したと判定した場合にはＳ３２０に進み、地形演算部４３ｍが演算した地形情報と、目標面演算部４３ｃが演算した目標面６０の情報とを入力してＳ３３０に進む。一方、Ｓ３１０でアームクラウド操作が継続していると判定した場合にはＳ３１０の処理を繰り返す。
【００９７】
Ｓ３３０では、補正値演算部４３ｉは、Ｓ３２０で入力した地形情報と目標面６０の情報を基に出来形９７が目標面６０の下方に位置するか否かを同一の座標系上で判定する。なお、出来形９７の位置は、先述の軌跡９８と出来形９７の距離の演算に利用するものと同じ方法で特定できる。
【００９８】
Ｓ３３０で出来形９７が目標面６０の下方に位置すると判定された場合にはＳ３４０に進み、出来形９７が目標面６０の上方に位置すると判定された場合には処理を終了して次回の開始タイミングまで待機する。なお、ここで、出来形９７が目標面６０の上方に位置する場合に補正値を算出しないのは、バケット１０の大きさや掘削力等の関係で１回の掘削動作で目標面６０まで掘れるとは限らず、出来形９７が目標面６０の上方に位置する場合には精度の良し悪しの判断がつかないという考え方に基づくものである。
【００９９】
Ｓ３４０では、補正値演算部４３ｉは、フローチャートの開始からＳ３１０でＹＥＳと判定されるまでの間にバケット１０の爪先が移動した位置データの集合を姿勢演算部４３ｂから取得し、その位置データの集合を掘削作業に際してのバケット１０の爪先の軌跡（軌跡情報）とする。
【０１００】
Ｓ３５０では、補正値演算部４３ｉは、まず、目標面演算部４３ｃの目標面６０の情報と地形演算部４３ｍの地形情報と姿勢演算部４３ｂの軌跡情報とを基に、出来形９７及び軌跡９８を形成する複数の点のそれぞれについて目標面６０との距離を同一座標系上で算出する。そして、その算出した複数の距離の平均値から出来形９７と軌跡９８の位置を特定し、軌跡９８から出来形９７までの距離を算出する。次に補正値演算部４３ｉは、算出した軌跡９８と出来形９７の距離と、図１２で定義された距離とブームパイロット圧の相関関係とを基に、ブーム上げ時のパイロット圧の補正値を演算し、その演算結果を補正値記憶部４３ｊに記憶する。
【０１０１】
例えば、軌跡９８と出来形９７の距離の距離が正の場合は、軌跡９８の下方に出来形９７が位置するいわゆる掘り過ぎの場面であるが、この場合には、ブーム上げでパイロット圧を増加し、ブーム下げでパイロット圧を減少する補正値が補正値演算部４３ｉにより算出される。
【０１０２】
補正値記憶部４３ｊへの補正値の記録処理が完了したら図１８の一連の処理を終了し、次にアームクラウド操作が検出されるまで補正値演算部４３ｉは待機する。
【０１０３】
図１９は制御コントローラ４０で実行される処理のフローチャートである。制御コントローラ４０は操作量演算部４３ａによりオペレータによる操作が検出されたら図１９のフローチャートを開始する。
【０１０４】
Ｓ４１０では、シリンダ速度演算部４３ｄは、操作量演算部４３ａで演算された操作量を基に各油圧シリンダ５，６，７の動作速度（シリンダ速度）を演算する。
【０１０５】
Ｓ４２０では、バケット先端速度演算部４３ｅは、シリンダ速度演算部４３ｄで演算された各油圧シリンダ５，６，７の動作速度と、姿勢演算部４３ｂで演算された作業機１Ａの姿勢とを基に、オペレータ操作によるバケット先端（爪先）の速度ベクトルＢを演算する。
【０１０６】
Ｓ４３０では、バケット先端速度演算部４３ｅは、姿勢演算部４３ｂで演算したバケット１０の爪先の位置（座標）と、ＲＯＭ９３に記憶された目標面６０を含む直線の距離から、バケット先端から制御対象の目標面６０までの距離Ｄ（図５参照）を算出する。そして、距離Ｄと図１６のグラフを基にバケット先端の速度ベクトルの目標面６０に垂直な成分の制限値ａｙを算出する。
【０１０７】
Ｓ４４０では、バケット先端速度演算部４３ｅは、Ｓ４２０で算出したオペレータ操作によるバケット先端の速度ベクトルＢにおいて、目標面６０に垂直な成分ｂｙを取得する。
【０１０８】
Ｓ４５０では、目標バケット先端速度演算部４３ｆは、Ｓ４３０で算出した制限値ａｙが０以上か否かを判定する。なお、図１９の右上に示したようにｘｙ座標を設定する。当該ｘｙ座標では、ｘ軸は目標面６０と平行で図中右方向を正とし、ｙ軸は目標面６０に垂直で図中上方向を正とする。図１９中の凡例では垂直成分ｂｙ及び制限値ａｙは負であり、水平成分ｂｘ及び水平成分ｃｘ及び垂直成分ｃｙは正である。そして、図１６から明らかであるが、制限値ａｙが０のときは距離Ｄが０、すなわち爪先が目標面６０上に位置する場合であり、制限値ａｙが正のときは距離Ｄが負、すなわち爪先が目標面６０より下方に位置する場合であり、制限値ａｙが負のときは距離Ｄが正、すなわち爪先が目標面６０より上に位置する場合である。Ｓ４５０で制限値ａｙが０以上と判定された場合（すなわち、爪先が目標面６０上またはその下方に位置する場合）にはＳ４６０に進み、制限値ａｙが０未満の場合にはＳ４８０に進む。
【０１０９】
Ｓ４６０では、目標バケット先端速度演算部４３ｆは、オペレータ操作による爪先の速度ベクトルＢの垂直成分ｂｙが０以上か否かを判定する。ｂｙが正の場合は速度ベクトルＢの垂直成分ｂｙが上向きであることを示し、ｂｙが負の場合は速度ベクトルＢの垂直成分ｂｙが下向きであることを示す。Ｓ４６０で垂直成分ｂｙが０以上と判定された場合（すなわち、垂直成分ｂｙが上向きの場合）にはＳ４７０に進み、垂直成分ｂｙが０未満の場合にはＳ５００に進む。
【０１１０】
Ｓ４７０では、目標バケット先端速度演算部４３ｆは、制限値ａｙと垂直成分ｂｙの絶対値を比較し、制限値ａｙの絶対値が垂直成分ｂｙの絶対値以上の場合にはＳ５００に進む。一方、制限値ａｙの絶対値が垂直成分ｂｙの絶対値未満の場合にはＳ５３０に進む。
【０１１１】
Ｓ５００では、目標バケット先端速度演算部４３ｆは、マシンコントロールによるブーム８の動作で発生すべきバケット先端の速度ベクトルＣの目標面６０に垂直な成分ｃｙを算出する式として「ｃｙ＝ａｙ−ｂｙ」を選択し、その式とＳ４３０の制限値ａｙとＳ４４０の垂直成分ｂｙを基に垂直成分ｃｙを算出する。そして、算出した垂直成分ｃｙを出力可能な速度ベクトルＣを算出し、その水平成分をｃｘとする（Ｓ５１０）。
【０１１２】
Ｓ５２０では、目標速度ベクトルＴを算出する。目標速度ベクトルＴの目標面６０に垂直な成分をｔｙ、水平な成分ｔｘとすると、それぞれ「ｔｙ＝ｂｙ＋ｃｙ、ｔｘ＝ｂｘ＋ｃｘ」と表すことができる。これにＳ５００の式（ｃｙ＝ａｙ−ｂｙ）を代入すると目標速度ベクトルＴは結局「ｔｙ＝ａｙ、ｔｘ＝ｂｘ＋ｃｘ」となる。つまり、Ｓ５２０に至った場合の目標速度ベクトルの垂直成分ｔｙは制限値ａｙに制限され、マシンコントロールによる強制ブーム上げが発動される。
【０１１３】
Ｓ４８０では、目標バケット先端速度演算部４３ｆは、オペレータ操作による爪先の速度ベクトルＢの垂直成分ｂｙが０以上か否かを判定する。Ｓ４８０で垂直成分ｂｙが０以上と判定された場合（すなわち、垂直成分ｂｙが上向きの場合）にはＳ５３０に進み、垂直成分ｂｙが０未満の場合にはＳ４９０に進む。
【０１１４】
Ｓ４９０では、目標バケット先端速度演算部４３ｆは、制限値ａｙと垂直成分ｂｙの絶対値を比較し、制限値ａｙの絶対値が垂直成分ｂｙの絶対値以上の場合にはＳ５３０に進む。一方、制限値ａｙの絶対値が垂直成分ｂｙの絶対値未満の場合にはＳ５００に進む。
【０１１５】
Ｓ５３０に至った場合、マシンコントロールでブーム８を動作させる必要が無いので、目標バケット先端速度演算部４３ｆは、速度ベクトルＣをゼロとする。この場合、目標速度ベクトルＴは、Ｓ５２０で利用した式（ｔｙ＝ｂｙ＋ｃｙ、ｔｘ＝ｂｘ＋ｃｘ）に基づくと「ｔｙ＝ｂｙ、ｔｘ＝ｂｘ」となり、オペレータ操作による速度ベクトルＢと一致する（Ｓ５４０）。
【０１１６】
ここでは、図２０に示した（１）−（４）の４つの場合に上記のＳ４５０からＳ５４０の処理を適用したときの目標速度ベクトルＴ（ｔｙ，ｔｘ）について説明する。
【０１１７】
（１）の場合、目標面６０の下方にバケット先端が在るため、距離Ｄが負になり制限値ａｙは図１６より上向き（（＋）方向）となる。そして、演算部４３ｅで演算された速度ベクトルＢの垂直成分ｂｙは下向き（（−）方向）である。そのため、Ｓ４５０、Ｓ４６０、Ｓ５００というルートを通るので、目標速度ベクトルＴは「ｔｙ＝ａｙ、ｔｘ＝ｂｘ＋ｃｘ」となる。
【０１１８】
（２）の場合、目標面６０の下方にバケット先端が在るため、距離Ｄが負になり制限値ａｙは図１６より上向き（（＋）方向）となる。そして、垂直成分ｂｙは上向き（（＋）方向）である。そのため、Ｓ４５０、Ｓ４６０、Ｓ４７０を通る。したがって、Ｓ４４７０で制限値ａｙと垂直成分ｂｙの絶対値を比較し、制限値ａｙの方が大きい場合には、目標速度ベクトルＴは「ｔｙ＝ａｙ、ｔｘ＝ｂｘ＋ｃｘ」となり（Ｓ５００，５１０，５２０）、垂直成分ｂｙの方が大きい場合には「ｔｙ＝ｂｙ、ｔｘ＝ｂｘ」となる（Ｓ５３０，５４０）。つまり、目標ベクトルＴの垂直成分ｔｙとしては、制限値ａｙと垂直成分ｂｙのうち絶対値が大きい方が選択される。
【０１１９】
（３）の場合、目標面６０の上方にバケット先端が在るため、距離Ｄが正になり制限値ａｙは図１６より下向き（（−）方向）となる。そして、垂直成分ｂｙは下向き（（−）方向）である。そのため、Ｓ４５０、Ｓ４８０、Ｓ４９０を通る。したがって、Ｓ４４９０で制限値ａｙと垂直成分ｂｙの絶対値を比較し、制限値ａｙの方が大きい場合には、目標速度ベクトルＴは「ｔｙ＝ｂｙ、ｔｘ＝ｂｘ」となり（Ｓ５３０，５４０、垂直成分ｂｙの方が大きい場合には「ｔｙ＝ａｙ、ｔｘ＝ｂｘ＋ｃｘ」となる）（Ｓ５００，５１０，５２０）。つまり、目標ベクトルＴの垂直成分ｔｙとしては、制限値ａｙと垂直成分ｂｙのうち絶対値が小さい方が選択される。
【０１２０】
（４）の場合、目標面６０の上方にバケット先端が在るため、距離Ｄが正になり制限値ａｙは図１６より下向き（（−）方向）となる。そして、垂直成分ｂｙは上向き（（＋）方向）である。そのため、Ｓ４５０、Ｓ４８０、Ｓ５３０を通るので、目標速度ベクトルＴは「ｔｙ＝ｂｙ、ｔｘ＝ｂｘ」となる。なお、ここでは説明を簡略化するために、Ｓ４８０でＹＥＳの場合にＳ５３０に進むように構成したが、Ｓ５３０に代えてＳ５００に進むように構成を変更しても良い。このように構成すると、アームクラウド操作中に先の図９の点Ｐ３に相当する点を超えたところでマシンコントロールによる強制ブーム下げが発動し目標面６０に沿った掘削が行われることになるので、目標面６０に沿った掘削距離を長くできる。なお、このようにマシンコントロールによりブーム下げを行う場合に補正が必要になったときには、第１実施形態と同様に図１３を利用して算出した補正値を利用することは言うまでも無い。
【０１２１】
図１９の説明に戻る。Ｓ５５０では、目標シリンダ速度演算部４３ｇは、Ｓ５２０またはＳ５４０で決定した目標速度ベクトルＴ（ｔｙ，ｔｘ）を基に各油圧シリンダ５，６，７の目標速度を演算する。
【０１２２】
Ｓ５６０では、目標パイロット圧演算部４３ｈは、Ｓ５５０で算出された各シリンダ５，６，７の目標速度を基に各油圧シリンダ５，６，７の流量制御弁１５ａ，１５ｂ，１５ｃへの目標パイロット圧を演算する。
【０１２３】
Ｓ５７０では、目標パイロット圧演算部４３ｈは、マシンコントロールによるブーム８の動作で発生すべきバケット先端の速度ベクトルＣがゼロか否かの判定を行う。速度ベクトルＣがゼロでない場合（すなわちマシンコントロールが発動する場合）にはＳ５８０に進み、速度ベクトルＣがゼロの場合（すなわちマシンコントロールが発動しない場合）にはＳ５８０で補正値を加えることなくＳ５９０に進む。
【０１２４】
Ｓ５８０では、目標パイロット圧演算部４３ｈは、補正値記憶部４３ｊに記憶されたブーム上げの補正値を取得し、その補正値をブームシリンダ５の流量制御弁１５ａへの目標パイロット圧に加算してＳ５９０に進む。
【０１２５】
Ｓ５９０では、目標パイロット圧演算部４３ｈは、各油圧シリンダ５，６，７の流量制御弁１５ａ，１５ｂ，１５ｃへの目標パイロット圧を電磁比例弁制御部４４に出力する。電磁比例弁制御部４４は、各油圧シリンダ５，６，７の流量制御弁１５ａ，１５ｂ，１５ｃに目標パイロット圧が作用するように電磁比例弁５４，５５，５６を制御し、これにより作業機１Ａによる掘削が行われる。例えば、前回の掘削時に軌跡９８と出来形９７の距離が正の値だった場合（すなわち、軌跡９８の下方に出来形９７が位置するいわゆる掘り過ぎの場合）には、補正値演算部４３ｉが、図１８のフローチャートに基づいて、ブーム上げでパイロット圧を増加させ、ブーム下げでパイロット圧を減少させる補正値を算出する。このように算出された補正値でもってＳ５６０で算出したブームパイロット圧を補正してマシンコントロールを発動させると、Ｓ５９０の処理時に前回の掘削時よりも爪先の描く軌跡が上方に移動して掘り過ぎが防止されるので、出来形を目標面６０に近づけることができる。
【０１２６】
Ｓ５９０の処理が終了したら、操作量演算部４３ａでオペレータによるレバー操作が検出されるまで待機する。
【０１２７】
＜効果＞
次の本実施形態の効果を説明する。上記の実施形態では、ブーム８、アーム９及びバケット１０を含む多関節型の作業機１Ａと、ブーム８、アーム９及びバケット１０をそれぞれ駆動するブームシリンダ５、アームシリンダ６及びバケットシリンダ７と、これら油圧シリンダ５，６，７の流量制御弁１５ａ，１５ｂ，１５ｃの少なくとも１つにオペレータの操作に応じた制御信号（第１制御信号）を出力する操作装置４５ａ，４５ｂ，４６ａと、操作装置４５ａ，４５ｂ，４６ａから出力された制御信号により作業機１Ａの先端（バケット爪先）が目標面６０に接近している場合、作業機１Ａの先端が目標面６０に沿って移動するようにブームシリンダ５を動作させる制御信号（第２制御信号）を新たに生成する目標パイロット圧演算部（制御信号演算部）４３ｈを有し、第１制御信号又は第２制御信号に基づいてブームシリンダ５、アームシリンダ６及びバケットシリンダ７の流量制御弁１５ａ，１５ｂ，１５ｃを制御する制御コントローラ４０を備える油圧ショベル１において、制御コントローラ４０は、第２制御信号を基に駆動された作業機１Ａによって形成された出来形９７の位置情報を、油圧ショベル１の周辺地形を測定する地形計測装置９６から入力される地形情報を基に算出する地形演算部４３ｍと、第２制御信号を基に駆動された作業機１Ａの先端が移動した軌跡９８の位置情報を算出する姿勢演算部４３ｂをさらに備え、目標パイロット圧演算部４３ｈは、出来形９７の位置情報と軌跡９８の位置情報の差が小さくなるように第２制御信号を補正することとした。
【０１２８】
このように構成した油圧ショベルによれば、掘削の都度、出来形９７が軌跡９８に近づくようにブームシリンダ５の制御信号（パイロット圧）が補正され、出来形９７と軌跡９８の位置情報の差が小さくなるので、角度センサ３０，３１，３２の検出精度が充分でない場合や、個体差・経年変化等により作業機先端の制御精度が充分でない場合等にも、バケット１０の爪先を目標面６０に沿わせながら掘削できる。その結果、目標面６０の施工精度を高めることができる。
【０１２９】
＜付記＞
なお、図１５の構成を有する領域制限制御部４３を備える油圧ショベルにおいても、第１実施形態のように出来形９７と目標面６０の距離に基づいて第２制御信号の補正を行っても良い。
【０１３０】
また、上記の第２実施形態では、出来形９７が目標面６０近傍の軌跡９８に近づくようにパイロット圧を補正する例について説明した。ここで、軌跡９８と出来形９７にズレが生じるということは、制御コントローラ４０が爪先（作業機１Ａ）の制御に利用している座標系（ショベル座標系）が地上に設定した座標系（グローバル座標系）とズレていることを意味する。そこで、軌跡９８が出来形９７に近づくようにショベル座標系を校正することで補正を行っても良い。
【０１３１】
また、上記の２つの実施形態では、地形計測装置９６は、図１に示すように車体１Ｂ（油圧ショベル１）に取り付けても良いし、図２１に示すように車体１Ｂの外部に独立して設置しても良いし、図２２に示すようにドローン等の飛行体９９に搭載しても良い。図２１や図２２のように車体１Ｂに取り付けない場合には、地形情報は無線または有線で車体１Ｂ上の制御コントローラ４０に入力できる。図１のように建設機械に地形計測装置９６を取り付けると、地形計測装置９６と制御コントローラ４０の通信接続構成が簡便である。一方、図２１及び図２２のように地形計測装置９６を建設機械から独立させると、同一の地形計測装置９６から複数台の建設機械に対して地形情報を出力することができる。
【０１３２】
また、図１２及び図１３に示したように距離と補正値が比例する場合を説明したが、距離がゼロに近い場合には補正値を算出せず、ゼロから正側と負側に所定の閾値値をそれぞれ設定し、当該閾値を越えた場合に補正値を算出するようにしても良い。また、距離を複数の区間に分割し、各区間で一定の補正値をとるようにし、階段状に補正値が増加又は減少するように構成しても良い。また、距離が所定の閾値を越えた場合には、当該閾値との偏差の大小に関わらず所定の補正値を算出し、その算出した補正値をそれまでの補正値の合計に加算するという構成を採用しても良い。この場合、例えば、目標面６０の下方に閾値を超えた位置に出来形がある場合、「所定の補正値」のブーム上げパイロット圧補正値として１ＭＰａを加算し、ブーム下げパイロット圧補正値として１ＭＰａを減算する。このように構成すると前回の制御との乖離を少なくできるので制御を安定化できる。
【０１３３】
さらに、上記では、ブーム制御（マシンコントロール）の補正としてパイロット圧を増減する方法を説明したが、例えば、第２実施形態のように目標シリンダ速度から目標パイロット圧を算出しており、その算出に際して目標シリンダ速度から目標パイロット圧への変換テーブルを利用している場合には、当該変換テーブルの特性を変更することでパイロット圧を増減する方法と同等の補正を行っても良い。
【０１３４】
また、目標面演算部４３ｃで演算される目標面の位置情報と、地形演算部４３ｍで演算される地表面上の各点の位置情報は、ショベル座標系及びグローバル座標系のいずれで取得しても良い。
【０１３５】
また、上記では、操作装置４５，４６，４７は油圧パイロット方式であったが、各油圧シリンダ５，６，７の流量制御弁１５ａ，１５ｂ，１５ｃを制御する制御信号を電気信号とする電気パイロット方式を利用しても良い。
【０１３６】
上記では、掘削の都度、補正値を演算するように構成したが、補正値を演算するタイミングに特に限定はない。したがって、例えば、１日の作業開始前や作業終了後に補正値を演算したり、所定の周期で演算したり、目標面付近を掘削する仕上げ作業中（すなわち掘削中）に演算したりする運用をしても良い。
【０１３７】
また、上記では、作業機１Ａの制御の基準（制御点）としてバケット１０の爪先を選択したが、バケット１０上の点及びバケット近傍の作業機１Ａ上の点であれば代替可能である。
【０１３８】
また、上記では制御コントローラ４０内の領域制限制御部４３を油圧ショベル１に搭載する場合について説明したが、領域制限制御部４３は油圧ショベル１から切り離し、オペレータ操作検出装置５２ａ等からの入力データを無線・有線で入力し、当該入力データから演算した結果（各油圧シリンダ５，６，７の目標パイロット圧）を電磁比例弁制御部４４に無線・有線で出力するように構成しても良い。この場合、領域制限制御部４３は単独のコンピュータで構成しても良いし、複数のコンピュータで構成しても良い。
【０１３９】
なお、本発明は、上記の実施の形態に限定されるものではなく、その要旨を逸脱しない範囲内の様々な変形例が含まれる。例えば、本発明は、上記の実施の形態で説明した全ての構成を備えるものに限定されず、その構成の一部を削除したものも含まれる。また、ある実施の形態に係る構成の一部を、他の実施の形態に係る構成に追加又は置換することが可能である。
【０１４０】
上記の制御コントローラ４０に係る各構成や当該各構成の機能及び実行処理等は、それらの一部又は全部をハードウェア（例えば各機能を実行するロジックを集積回路で設計する等）で実現しても良い。また、上記の制御コントローラ４０に係る構成は、演算処理装置（例えばＣＰＵ）によって読み出し・実行されることで当該制御コントローラ４０の構成に係る各機能が実現されるプログラム（ソフトウェア）としてもよい。当該プログラムに係る情報は、例えば、半導体メモリ（フラッシュメモリ、ＳＳＤ等）、磁気記憶装置（ハードディスクドライブ等）及び記録媒体（磁気ディスク、光ディスク等）等に記憶することができる。
【符号の説明】
【０１４１】
１Ａ…フロント作業機、８…ブーム、９…アーム、１０…バケット、１７…マシンコントロールＯＮ／ＯＦＦスイッチ１７、３０…ブーム角度センサ、３１…アーム角度センサ、３２…バケット角度センサ、４０…制御コントローラ、４３…領域制限制御部、４３ａ…操作量演算部、４３ｂ…姿勢演算部、４３ｃ…目標面演算部、４３ｄ…シリンダ速度演算部、４３ｅ…バケット先端速度演算部、４３ｆ…目標バケット先端速度演算部、４３ｇ…目標シリンダ速度演算部、４３ｈ…目標パイロット圧演算部、４３ｉ…補正値演算部、４３ｊ…補正値記憶部、４３ｍ…地形演算部、４３ｎ…アーム角度別ブームパイロット圧演算部、４４…電磁比例弁制御部、４５…操作装置（ブーム、アーム）、４６…操作装置（バケット、旋回）、４７…操作装置（走行）、５０…作業機姿勢検出装置、５１…目標面設定装置、５２ａ，５２ｂ…オペレータ操作検出装置、５４，５５，５６…電磁比例弁、９６…地形計測装置、９７…出来形、９８…バケット爪先の軌跡
【図１】
2018051511.tif 000003
【図２】
2018051511.tif 000004
【図３】
2018051511.tif 000005
【図４】
2018051511.tif 000006
【図５】
2018051511.tif 000007
【図６】
2018051511.tif 000008
【図７】
2018051511.tif 000009
【図８】
2018051511.tif 000010
【図９】
2018051511.tif 000011
【図１０】
2018051511.tif 000012
【図１１】
2018051511.tif 000013
【図１２】
2018051511.tif 000014
【図１３】
2018051511.tif 000015
【図１４】
2018051511.tif 000016
【図１５】
2018051511.tif 000017
【図１６】
2018051511.tif 000018
【図１７】
2018051511.tif 000019
【図１８】
2018051511.tif 000020
【図１９】
2018051511.tif 000021
【図２０】
2018051511.tif 000022
【図２１】
2018051511.tif 000023
【図２２】
2018051511.tif 000024
【手続補正書】
【提出日】平成30年1月15日(2018.1.15)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ブーム及びアームを含む多関節型の作業機と、
前記ブーム、前記アームをそれぞれ駆動するブームシリンダ、アームシリンダと、
前記アームシリンダの流量制御弁にオペレータの操作量に応じた第１制御信号を出力する操作装置と、
前記第１制御信号により前記作業機の先端が目標面に接近している場合、前記作業機の先端が前記目標面に沿って移動するように前記ブームシリンダを動作させる第２制御信号を演算し、前記第２制御信号に基づいて前記ブームシリンダの流量制御弁を制御して、前記ブームの上げ下げを行う制御装置を備える作業機械において、
前記第２制御信号は、前記ブームシリンダの流量制御弁の油圧駆動部に供給されるパイロット圧であり、
前記制御装置は、前記第２制御信号を基に駆動された前記作業機によって形成された出来形の位置情報を、前記作業機械の周辺地形を測定する地形計測装置から入力される地形情報を基に算出し、前記出来形の位置情報と前記目標面とに基づいて前記出来形が前記目標面に近づくように、前記出来形の高さが前記目標面より低い場合には、ブーム上げ時のパイロット圧を増加させると共に、ブーム下げ時のパイロット圧を減少するように前記第２制御信号を補正し、前記出来形の高さが前記目標面よりも高い場合には、ブーム上げ時のパイロット圧を減少させると共に、ブーム下げ時のパイロット圧を増加するように前記第２制御信号を補正することを特徴とする作業機械。
【請求項２】
請求項１に記載の作業機械において、
前記ブーム上げ時の前記第２制御信号は、前記目標面と前記出来形との距離が増加するほど前記パイロット圧が増加するように補正され、
前記ブーム下げ時の前記第２制御信号は、前記目標面と前記出来形との距離が増加するほど前記パイロット圧が減少するように補正されることを特徴とする作業機械。
【請求項３】
請求項１に記載の作業機械において、
前記制御装置は、前記第２制御信号を基に駆動された前記作業機の先端が移動した軌跡の位置情報を算出する姿勢演算部をさらに有し、
前記制御信号演算部は、前記出来形の位置情報と前記軌跡の位置情報の差が小さくなるように前記第２制御信号を補正することを特徴とする作業機械。
【請求項４】
請求項１に記載の作業機械において、
前記地形計測装置は、前記作業機械に搭載されていることを特徴とする作業機械。
【請求項５】
請求項１に記載の作業機械において、
前記地形計測装置は、前記作業機械の外部に備えられており、
前記地形計測装置で計測された地形情報は無線または有線により前記作業機械の前記制御装置に入力されていることを特徴とする作業機械。
【国際調査報告】
2018051511.tif 000025
2018051511.tif 000026