(57)【要約】  メインコントローラは，複数の設計面のうち互いに隣接する第１設計面及び第２設計面の連結部または当該連結部の上方を通過し，一方の端部が第１設計面上に位置し，他方の端部が第２設計面上に位置する補完後設計面を生成し，操作レバー装置のアーム操作量に応じて補完後設計面の曲率１／Ｒを設定し，補完後設計面に含まれるいずれか１つの面を目標面と設定してブームシリンダを制御する半自動掘削制御を行う。
2021059931.tif 000002
【特許請求の範囲】
【請求項１】
作業装置と，
前記作業装置を駆動する複数のアクチュエータと，
前記複数のアクチュエータを操作するための操作装置と，
前記複数のアクチュエータの少なくとも１つの駆動を制御するコントローラとを備えた作業機械において，
前記コントローラは，
前記作業装置の動作平面上に規定された複数の設計面のうち互いに隣接する第１設計面及び第２設計面の連結部または当該連結部の上方を通過し，一方の端部が前記第１設計面上に位置し，他方の端部が前記第２設計面上に位置する補完後設計面を生成し，
前記補完後設計面の曲率を前記操作装置の操作量に応じて設定し，
前記補完後設計面上に目標面を設定し，
前記作業装置に設定した作業点が前記目標面上または前記目標面の上方に保持されるように前記複数のアクチュエータの少なくとも１つを制御する半自動掘削制御を行うことを特徴とする作業機械。
【請求項２】
請求項１の作業機械において，
前記コントローラは，
前記補完後設計面を複数の平面で近似し，
前記複数の平面に含まれるいずれか１つの平面を前記目標面として設定して前記半自動掘削制御を行うことを特徴とする作業機械。
【請求項３】
請求項１の作業機械において，
前記コントローラは，前記操作装置の操作量に対する前記補完後設計面の曲率の関係が単調減少の関係となるように前記補完後設計面の曲率を設定する
ことを特徴とする作業機械。
【請求項４】
請求項１の作業機械において，
前記コントローラは，
前記操作装置の操作量が所定値未満の場合，前記補完後設計面の生成を中断し，
前記操作装置の操作量が前記所定値以上の場合，前記操作装置の操作量に対する前記補完後設計面の曲率の関係が単調減少の関係となるように前記補完後設計面の曲率を設定する
ことを特徴とする作業機械。
【請求項５】
請求項４の作業機械において，
前記所定値は，前記複数のアクチュエータのうち前記操作装置への操作に対応するアクチュエータが動作を開始する操作量の値である
ことを特徴とする作業機械。
【請求項６】
請求項１の作業機械において，
前記コントローラは，
前記第１設計面と前記第２設計面の前記連結部の形状が上に凸であり，前記作業装置を前記動作平面上で一方側から他方側に移動させる場合，
前記第１設計面と前記第２設計面のうち前記一方側の設計面の端部に前記一方側の設計面と同じ傾きで一端が接続する第１の円弧面と，前記第１の円弧面の他端側に一端が接続し，前記第１設計面と前記第２設計面のうち前記他方側の設計面に前記他方側の設計面と同じ傾きで他端が接続する第２の円弧面とを有する面を前記補完後設計面として設定する
ことを特徴とする作業機械。
【請求項７】
請求項１の作業機械において，
前記コントローラは，前記第１設計面と前記第２設計面のそれぞれと前記作業点との距離を演算し，前記補完後設計面上で前記作業点に最も近い近傍点と前記作業点との距離を演算し，前記第１設計面，前記第２設計面，及び前記近傍点のうち前記作業点との距離が最も小さいものを選出し，その選出した設計面または近傍点の接線を前記目標面として設定して前記半自動掘削制御を行う
ことを特徴とする作業機械。
【請求項８】
請求項２の作業機械において，
前記コントローラは，前記複数の平面のそれぞれと前記作業点との距離を演算し，前記複数の平面のうち前記作業点との距離が最も小さい面を前記目標面として設定して前記半自動掘削制御を行う
ことを特徴とする作業機械。
【請求項９】
請求項１の作業機械において，
前記コントローラは，前記補完後設計面上の位置に応じて前記補完後設計面の曲率を変更する
ことを特徴とする作業機械。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は作業装置を備える油圧ショベルなどの作業機械に関する。
【背景技術】
【０００２】
代表的な作業機械である油圧ショベルを用いて設計面の施工を行う際，設計面の３次元データ（３次元設計データ）を用いてオペレータ操作を補正することでフロント作業装置を半自動的に動作させ，設計面に応じた掘削成形作業を実施する制御システムが知られている。この制御システムの一例としては，オペレータのアーム操作に基づいてアームを動作させる際に，フロント作業装置に設定した作業点（例えばバケット爪先）が設計面に侵入しないように，又は，当該作業点が設計面に沿って動作するように，例えばブーム上げ動作を自動で加えて当該作業点の動作方向を補正する制御（以下，このような制御を「半自動掘削制御」と称することがある）を行うものがある。【０００３】
ところで，一般的に，地形の設計データの断面には複数の設計面が含まれる。例えば，河川堤防の断面図には，河川敷（増水時に冠水する平坦面（高水敷））と，堤防の上端面（天端）と，それらを繋ぐ斜面（法面）と，の３つの設計面が少なくとも含まれる。こういった複数の設計面からなる設計データに基づいた施工では，互いに隣接する傾斜の異なる２つの設計面の連結部をバケットが通過する前後で，どちらの設計面に対してもバケットが侵入しないように成形作業を行う必要がある。【０００４】
この種の要求に関して特許文献１には，第１設計面とバケットの距離から第１候補速度を取得し，第２設計面とバケットの距離から第２候補速度を取得し，第１設計面と第２設計面のそれぞれとバケットとの相対関係に基づいて第１候補速度と第２候補速度のいずれか一方を制限速度として選択し，当該選択された制限速度に係る設計面に対するバケットの相対速度を当該選択された制限速度に制限する掘削制御システムが開示されている。【０００５】
さらに特許文献１には上記の制限速度の選択の具体例として，（１）２つの設計面のうちバケットからの距離が近い設計面に係る制限速度を選択することと，（２）２つの設計面のうちオペレータのアーム操作に対して自動的に行われるブーム上げの速度（ブームシリンダの目標速度に対応する調整速度）が大きい設計面に係る制限速度を選択することが開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】国際公開第２０１２／１２７９１３号
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら，特許文献１が開示する掘削制御システムでは，２つの設計面の連結部をバケットが通過する際にブームシリンダの目標速度に急激な変化が生じ得るため，オペレータの操作量によってはいずれかの設計面にバケットが侵入するおそれがある。この点につき，図１２に示すように傾斜の異なる２つの設計面を掘削する場合を例にとって説明する。【０００８】
まず，上記（１）の方法に準じて２つの設計面のうちバケットからの距離が近い設計面を選択する場合において，バケットと一方の設計面との距離を０に保ちつつ成形作業を行っていた時には，バケットが他方の設計面に接して距離が０となったタイミングで当該他方の設計面が選択される。この時，ブームに求められる速度指令値（ブームシリンダの目標速度）の変化の一例を図１３（ａ）に示す。設計面の切り替えの瞬間は点線の丸で囲った部分に相当し，設計面の切り替えの前後で速度指令値（目標速度）に急激な変化が発生する。【０００９】
次に，上記（２）の方法に準じて２つの設計面のうち自動的に行われるブーム上げの速度が大きい設計面を選択する場合において，設計面が切り替えられる時にブームに求められる速度指令値の変化の一例を図１３（ｂ）に示す。図１３（ａ）と同様に切り替えの瞬間は点線の丸で囲った部分に相当する。この場合，図１３（ａ）の場合よりも早いタイミングで設計面が切り替わるために，図１３（ａ）の場合よりも速度指令値の変化は抑制されるものの，依然として急激な速度変化が発生する。【００１０】
また，上記（１），（２）のいずれの方法をとる場合においても，ブームに求められる速度指令値の変化が急激な場合には，その変化にブームの実際の動作が追従できず，切り替え後の設計面にバケットが侵入するおそれがある。このような場合にも，設計面が切り替わる前にオペレータがアーム操作を緩めてアーム速度を低減すれば，設計面へのバケットの侵入を防止できる可能性が高まる。しかしその場合，オペレータに要求される操作が煩雑になるとともにアーム速度も遅くなるため，作業量が減少する可能性がある。【００１１】
本発明は，上記の課題に鑑みてなされたものであり，その目的は，半自動掘削制御が可能な作業機械において，傾斜の異なる２つの設計面の連結部を作業点（例えばバケット爪先）が通過する際に，オペレータの操作量によらず当該２つの設計面のいずれにも作業点（バケット爪先）が侵入することを防止でき，かつ，その際に作業量が減少することも抑制できる作業機械を提供することにある。
【課題を解決するための手段】
【００１２】
本願は上記課題を解決する手段を複数含んでいるが，その一例を挙げるならば，作業装置と，前記作業装置を駆動する複数のアクチュエータと，前記複数のアクチュエータを操作するための操作装置と，前記複数のアクチュエータの少なくとも１つの駆動を制御するコントローラとを備えた作業機械において，前記コントローラは，前記作業装置の動作平面上に規定された複数の設計面のうち互いに隣接する第１設計面及び第２設計面の連結部または当該連結部の上方を通過し，一方の端部が前記第１設計面上に位置し，他方の端部が前記第２設計面上に位置する補完後設計面を生成し，前記補完後設計面の曲率を前記操作装置の操作量に応じて設定し，前記補完後設計面上に目標面を設定し，前記作業装置に設定した作業点が前記目標面上または前記目標面の上方に保持されるように前記複数のアクチュエータの少なくとも１つを制御する半自動掘削制御を行うことを特徴とする。
【発明の効果】
【００１３】
本発明によれば，傾斜の異なる２つの設計面の連結部を作業点が通過する際に，オペレータの操作量によらず当該２つの設計面のいずれにも作業点が侵入することを防止でき，かつ，その際に作業量が減少することも抑制できる。
【図面の簡単な説明】
【００１４】
【図１】本発明の第１から第３の実施形態における作業機械を示す斜視図である。
【図２】図１に示す作業機械に搭載された油圧駆動装置を示す構成図である。
【図３】図１に示す作業機械に搭載された制御装置を示す構成図である。
【図４】図３に示す情報処理部の第１の実施形態における詳細構成を示すブロック図である。
【図５】第１の実施形態における設計面連結部の補完方法を示した図である。
【図６】補完された設計面に沿って掘削する作業機械を示す図である。
【図７】補完された設計面に沿って掘削する作業機械のブームシリンダに生じる速度を示した図である。
【図８】第１の実施形態における制御の流れを示すフロー図である。
【図９】図３に示す情報処理部の第２の実施形態における詳細構成を示すブロック図である。
【図１０】第２の実施形態における制御の流れを示すフロー図である。
【図１１】第３の実施形態におけるの設計面連結部の補完方法を示した図である。
【図１２】先行技術において，複数の設計面からなる設計データに基づいた施工を行う作業機械を示す図である。
【図１３】先行技術において，図１１に示す施工に際して作業機械のブームシリンダに生じる速度を示した図である。
【図１４】曲線長さと補完面の曲率の関係式の例を示した図である。
【発明を実施するための形態】
【００１５】
以下，本発明の実施の形態について図面を用いて説明する。
【００１６】
＜第１実施形態＞
図１は本発明の第１実施形態に係る作業機械を示す斜視図である。図１に示すように，本実施形態に係る作業機械は，車体である下部走行体９および上部旋回体１０と，複数のフロント部材１１，１２，８によって構成される多関節型の作業装置（フロント作業装置）１５とを備えている。
【００１７】
下部走行体９は左右のクローラ式走行装置を有し，左右の走行油圧モータ３ｂ，３ａ（左側３ｂのみ図示）により駆動される。
【００１８】
上部旋回体１０は下部走行体９上に旋回可能に搭載され，旋回油圧モータ４により旋回駆動される。上部旋回体１０には，原動機としてのエンジン１４と，エンジン１４により駆動される油圧ポンプ装置２（第１油圧ポンプ２ａと第２油圧ポンプ２ｂ（図２参照））と，コントロールバルブ２０と，油圧ショベルの各種制御を司るコントローラ５００（図２，３等参照）が搭載されている。
【００１９】
作業装置１５は，上部旋回体１０の前部に揺動可能に取り付けられている。作業装置１５は，揺動自在なフロント部材であるブーム１１，アーム１２，バケット８を有する多関節構造を有する。ブーム１１はブームシリンダ５の伸縮により上部旋回体１０に対して揺動し，アーム１２はアームシリンダ６の伸縮によりブーム１１に対して揺動し，バケット８はバケットシリンダ７の伸縮によりアーム１２に対して揺動する。すなわち,ブームシリンダ５，アームシリンダ６及びバケットシリンダ７は作業装置１５を構成する複数のフロント部材１１，１２，８を駆動する。
【００２０】
コントローラ５００において作業装置１５に設定した任意の点（作業点）の位置を算出するために，油圧ショベルは，例えば上部旋回体１０とブーム１１との連結部近傍に設けられ，ブーム１１の水平面に対する角度（ブーム角度）を検出する第１姿勢センサ１３ａと，例えばブーム１１とアーム１２との連結部近傍に設けられ，アーム１２の水平面に対する角度（アーム角度）を検出する第２姿勢センサ１３ｂと，例えばアーム１２とバケット８とを連結するバケットリンク８ａに設けられ，バケットリンク８ａの水平面に対する角度（バケット角度）を検出する第３姿勢センサ１３ｃと，水平面に対する上部旋回体１０の傾斜角度（ロール角，ピッチ角）を検出する車体姿勢センサ１３ｄとを備えている。なお，姿勢センサ１３ａ−１３ｄとしては例えばＩＭＵ（Inertial Measurement Unit：慣性計測装置）が使用可能である。また，第１姿勢センサ１３ａから第３姿勢センサ１３ｃは相対角度を検出するセンサ（例えばポテンショメータ）であってもよい。
【００２１】
これらの姿勢センサ１３ａ〜１３ｄが検出した角度はそれぞれ，ブーム角度データ，アーム角度データ，バケット角度データ，車体角度データからなる姿勢データとして，後述するコントローラ５００内の情報処理部１００に入力されている。
【００２２】
上部旋回体１０には運転室が備えられている。運転室内には作業装置１５（フロント部材１１，１２，８），上部旋回体１０及び下部走行体９を操作するための操作装置として，走行用右操作レバー装置１ａ，走行用左操作レバー装置１ｂ，右操作レバー装置１ｃ及び左操作レバー装置１ｄ等が配置されている。走行用右操作レバー装置１ａは右走行油圧モータ３ａの動作指示を，走行用左操作レバー装置１ｂは左走行油圧モータ３ｂの動作指示を，右操作レバー装置１ｃはブームシリンダ５（ブーム１１）とバケットシリンダ７（バケット８）の動作指示を，左操作レバー装置１ｄはアームシリンダ６（アーム１２）と旋回油圧モータ４（上部旋回体１０）の動作指示をするためのものである。本実施形態の操作装置１ａ−１ｄは電気レバーであり，操作装置１ａ−１ｄに対してオペレータにより入力される操作量（操作装置１ａ−１ｄの操作量）に応じた操作信号（電圧信号）を生成してコントローラ５００に出力している。なお，操作装置１ａ−１ｄを油圧パイロット式とし，圧力センサで操作量を検出してコントローラ５００に入力しても良い。
【００２３】
コントロールバルブ２０は，上述した旋回油圧モータ４，ブームシリンダ５，アームシリンダ６，バケットシリンダ７，及び左右の走行油圧モータ３ｂ，３ａ等の油圧アクチュエータのそれぞれに油圧ポンプ装置２から供給される圧油の流れ（流量と方向）を制御する複数の方向制御弁（例えば後述する図２の方向制御弁２１，２２，２３）を含む弁装置である。コントロールバルブ２０内の方向制御弁は，コントローラ５００から出力される指令電流（制御弁駆動信号）に基づいて電磁比例弁（例えば後述する図２の電磁比例弁２１ａ〜２３ｂ）が生成する信号圧によって駆動され，油圧アクチュエータ３−７のそれぞれに供給される圧油の流れ（流量と方向）を制御している。コントローラ５００から出力される駆動信号は，操作レバー装置１ａ−１ｄから出力される操作信号（操作情報）を基に生成される。
【００２４】
図２は図１に示した油圧ショベルの油圧駆動装置の構成図である。なお，説明の簡略化のため，油圧アクチュエータとしてブームシリンダ５とアームシリンダ６，バケットシリンダ７のみを備えた構成として説明し，本発明の実施形態と直接的に関係しないドレン回路等の図示と説明は省略する。また，従来の油圧駆動装置と構成および動作が同様のロードチェック弁などの説明は省略する。
【００２５】
図２の油圧駆動装置において，油圧ポンプ装置２は，第１油圧ポンプ２ａと第２油圧ポンプ２ｂとを備えている。第１油圧ポンプ２ａと第２油圧ポンプ２ｂは，エンジン１４によって駆動され，それぞれ第１ポンプラインＬ１と第２ポンプラインＬ２に圧油を供給する。本実施形態では，第１油圧ポンプ２ａおよび第２油圧ポンプ２ｂは固定容量型の油圧ポンプとして説明するが，本発明はこれに限定されるものではなく，可変容量型の油圧ポンプを用いて構成しても良い。
【００２６】
コントロールバルブ２０には，第１ポンプラインＬ１と第２ポンプラインＬ２からなる２系統のポンプラインが設けられている。第１ポンプラインＬ１には，ブームシリンダ５に供給される圧油の流れ（流量と方向）を制御するブーム方向制御弁２２と，バケットシリンダ７に供給される圧油の流れを制御するバケット方向制御弁２１とが接続されている。これにより第１油圧ポンプ２ａが吐出する圧油はブームシリンダ５とバケットシリンダ７に供給される。同様に，第２ポンプラインＬ２には，アームシリンダ６に供給される圧油の流れを制御するアーム方向制御弁２３が接続されており，第２油圧ポンプ２ｂが吐出する圧油はアームシリンダ６に供給される。なお，ブーム方向制御弁２２とバケット方向制御弁２１はパラレル回路Ｌ１ａによって，分流可能に構成されている
また，第１ポンプラインＬ１と第２ポンプラインＬ２とには，それぞれ個別にリリーフ弁２６，２７が接続されている。それぞれのポンプラインＬ１，Ｌ２の圧力があらかじめ設定されたリリーフ圧に達した場合，それぞれのリリーフ弁２６，２７が開口して圧油をタンクへ逃がす。
【００２７】
ブーム方向制御弁２２は，電磁比例弁２２ａ，２２ｂによって生成される信号圧によって動作する。同様に，アーム方向制御弁２３は電磁比例弁２３ａ，２３ｂの信号圧によって，バケット方向制御弁２１は電磁比例弁２１ａ，２１ｂの信号圧によって動作する。
【００２８】
これらの電磁比例弁２１ａ〜２３ｂは，パイロット油圧源２９から供給されるパイロット圧油（一次圧）をメインコントローラ５００から出力される指令電流（制御弁駆動信号）に基づいて減圧しており，そのようにして生成した信号圧を各方向制御弁２１〜２３に出力する。
【００２９】
右操作レバー装置１ｃは，操作レバーの操作量と操作方向に応じた電圧信号を，ブーム操作量データおよびバケット操作量データとしてメインコントローラ５００に出力する。同様に，左操作レバー１ｄは，操作レバーの操作量と操作方向に応じた電圧信号を，アーム操作量データとしてメインコントローラ５００に出力する。
【００３０】
メインコントローラ５００は，操作レバー装置１ｃ，１ｄから入力される各フロント部材１１，１２，８への操作量データと，設計面設定装置１８から入力される設計面の位置データ（設計面データ）と，角度検出器１３ａ〜１３ｄから入力される油圧ショベルの姿勢データと，油圧ショベルの寸法に関するデータであって車体情報記憶装置１９から入力される寸法データとに基づいて，各電磁比例弁２１ａ〜２３ｂを制御する指令信号（指令電流）を演算し，演算した指令信号を各電磁比例弁２１ａ〜２３ｂに出力する。
【００３１】
（設計面設定装置１８）
設計面設定装置１８は，地形（作業対象物）の完成形状を規定する設計面の設定や，設定された設計面の位置データ（設計面データ）の記憶に利用される装置であり，設計面データをメインコントローラ５００に出力する。設計面データは設計面の３次元形状を規定するデータであり，本実施形態では設計面の位置情報や角度情報が含まれている。本実施形態においては，設計面の位置は上部旋回体１０（油圧ショベル１）との相対距離情報（すなわち，上部旋回体１０（油圧ショベル１）に設定された座標系（車体座標系）における設計面の位置データ），設計面の角度は重力方向に対する相対角度情報として定義されているものとするが，位置を地球上での位置座標（すなわち，グローバル座標系での位置座標），角度を車体との相対角度などとする場合も含め，適当な変換を行ったデータを利用しても良い。
【００３２】
なお，設計面設定装置１８は，予め設定した設計面データの記憶機能を具備していれば良く，例えば半導体メモリ等の記憶装置にも代替可能である。そのため設計面データを例えばコントローラ５００内の記憶装置や油圧ショベルに搭載された記憶装置に記憶した場合には省略可能である。
【００３３】
（車体情報記憶装置１９）
車体情報記憶装置１９は，予め計測された油圧ショベルを構成する各部（例えば，下部走行体９，上部旋回体１０，フロント作業装置１５を構成する各フロント部材１１，１２，８）の寸法データの記憶に利用される装置であり，寸法データをメインコントローラ５００に出力する。
【００３４】
（メインコントローラ５００）
メインコントローラ５００は，油圧ショベルに関する各種制御を司るコントローラである。メインコントローラ５００は，フロント作業装置１５の動作平面上に規定された複数の設計面のうち１つを目標面として設定し，フロント作業装置１５に設定した作業点（例えば，バケット８の爪先）の移動範囲が目標面上または目標面の上方に保持されるように各フロント部材１１，１２，８に関する目標速度（例えば，油圧シリンダ５，６，７の目標速度（目標アクチュエータ速度））を演算し，その目標速度に基づいて作業装置１５（すなわち油圧シリンダ５，６，７）を制御する制御（本稿では「半自動掘削制御」や「マシンコントロール」と称することがある）を実行可能に構成されている。すなわちこの半自動掘削制御において例えば作業点としてバケット８の爪先を選択してオペレータがアームクラウド操作を入力すれば，他のフロント部材を特に操作しなくてもバケット爪先（バケット先端）が目標面に沿って移動するように作業装置１５が半自動的に制御されるため，オペレータの技量に依らず設計面に沿った掘削が可能となる。以下では，バケット８の爪先に作業点を設定した場合を例に挙げて説明を続ける。
【００３５】
なお，フロント作業装置１５の動作平面とは，各フロント部材１１，１２，８が動作する平面，すなわち，３つのフロント部材１１，１２，８の全てに直交する平面であり，そのような平面のうち例えばフロント作業装置１５の幅方向の中心（ブームピンにおける軸方向の中心）を通過する平面が選択できる。
【００３６】
図３は図１に示す油圧ショベルに搭載されたメインコントローラ５００の構成図である。メインコントローラ５００は，例えば図示しないＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）と，ＣＰＵによる処理を実行するための各種プログラムを格納するＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）やＨＤＤ（Ｈａｒｄ  Ｄｉｓｃ  Ｄｒｉｖｅ）などの記憶装置と，ＣＰＵがプログラムを実行する際の作業領域となるＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）とを含むハードウェアを用いて構成されている。このように記憶装置に格納されたプログラムを実行することで，バケット８を目標面に沿って移動させる際の目標アクチュエータ速度を演算する情報処理部１００と，演算した目標アクチュエータ速度に応じてコントロールバルブ２０の駆動信号を生成する制御弁駆動部２００として機能する。次に情報処理部１００の詳細について説明する。
【００３７】
（情報処理部１００）
情報処理部１００は，操作レバー装置１ｃ，１ｄからの操作量データと，姿勢センサ１３ａ―１３ｄからの姿勢データと，設計面設定装置１８からの設計面データと，車体情報記憶装置１９からの寸法データとに基づいて，各油圧シリンダ５，６，７の目標アクチュエータ速度を演算し，それらを制御弁駆動部２００に出力する。制御弁駆動部２００は，目標アクチュエータ速度に応じて，制御弁駆動信号を生成し，コントロールバルブ２０を駆動する。
【００３８】
情報処理部１００の詳細について，図４を用いて説明する。情報処理部１００は，偏差演算部１１０と，目標速度演算部１２０と，アクチュエータ速度演算部１３０と，補完後設計面生成部１４０と，目標面設定部１５０とを備えている。アクチュエータ速度演算部１３０の出力を，各油圧シリンダ５，６，７の目標アクチュエータ速度（ブーム速度，アーム速度，バケット速度）として，情報処理部１００から出力する。以下，偏差演算部１１０と，目標速度演算部１２０と，アクチュエータ速度演算部１３０と，目標面設定部１５０とについては概要を述べ，補完後設計面生成部１４０については詳細を述べる。
【００３９】
（補完後設計面生成部１４０）
補完後設計面生成部１４０は，設計面データと，操作量データとに基づいて，互いに隣接して傾斜角の異なる２つの設計面（第１設計面，第２設計面）の連結部を通過し又は当該連結部の上方を通過する面（以下では「補完後設計面」と称する）を新たに生成し，そのデータ（補完後設計面データ）を出力する。ここで「連結部」とは互いに隣接する２つの設計面が連結している部分を示し，３次元では線状に現れる部分である。
【００４０】
以下では，簡単のため，補完後設計面の生成に関連する設計面データに含まれる全ての設計面がブーム１１，アーム１２およびバケット８の回動軸に対して平行であると仮定する。この場合，設計面データに含まれる「設計面」と「連結部」は，前記回動軸に垂直な面と交差する「線分」とその「交点」に言い換え可能である。ただし，一般的に，施工精度の向上を意図する場合，バケット先端辺が各設計面に対して平行となるように車体の位置や姿勢を確保するので，前記の仮定は多くの場合で成立し，面を線分と等価に扱うことが出来る。この仮定を前提として，補完後設計面生成部１４０による補完後設計面の生成に関して図５を用いて具体的に説明する。
【００４１】
図５（ａ）に示すように，設計面設定装置１８からの設計面データとフロント作業装置１５の動作平面とが交差した面（断面）に２つの線分Ｐ１Ｐ２，Ｐ２Ｐ３からなる２つの設計面Ｐ１Ｐ２，Ｐ２Ｐ３が含まれているとする。２つの設計面Ｐ１Ｐ２，Ｐ２Ｐ３は，異なる傾斜角を有する互いに隣接した面であり，連結部Ｐ２で連結している。このとき，補完後設計面生成部１４０は，２つの設計面Ｐ１Ｐ２，Ｐ２Ｐ３の連結部Ｐ２の上方を通過し（換言すると，連結部Ｐ２の上方に位置し），一方の設計面（第１設計面）Ｐ１Ｐ２の上に一方の端部Ｐ２’が位置し，他方の設計面（第２設計面）Ｐ２Ｐ３の上に他方の端部Ｐ２．１が位置する補完後設計面Ｓ１を生成する。図５（ｂ）の例では，２つの設計面Ｐ１Ｐ２，Ｐ２Ｐ３の連結部Ｐ２の角を丸めた面を求めるような処理を行い，図５（ｂ）に示すような，２線分Ｐ１Ｐ２，Ｐ２Ｐ３に接し，両端Ｐ２’，Ｐ２．１が各線分Ｐ１Ｐ２，Ｐ２Ｐ３上に位置する円弧Ｐ２’Ｐ２．１を補完後設計面Ｓ１として生成している。
【００４２】
（補完後設計面Ｓ１の曲率１／Ｒ）
補完後設計面生成部１４０は，補完後設計面Ｓ１を生成する際，操作レバー装置１ｃ，１ｄからの操作量データに応じて補完後設計面Ｓ１（円弧Ｐ２’Ｐ２．１）の曲率１／Ｒを設定する。ただし本実施形態では，操作レバー装置１ｄからのアーム操作量データに応じて補完後設計面Ｓ１の曲率１／Ｒを設定する。図５（ｂ）の補完後設計面Ｓ１は円弧Ｐ２’Ｐ２．１であり，その半径はＲである。なお，補完後設計面Ｓ１が円弧ではない曲線の場合には，その曲線の一部を近似した円の半径である曲率半径の逆数が曲率となる。
【００４３】
補完後設計面Ｓ１の曲率１／Ｒの最大値は，例えば油圧ショベルの施工精度の実質的な限界を考慮して，バケット爪先の角丸みの曲率に設定できる。この場合の曲率１／Ｒ（最大値）は，操作レバー装置１ｄにアーム操作を入力したときにアームシリンダ６が動作を開始する操作量（実質的に最小のアーム操作量）に対応づけることができる。他の例としては，実際の施工現場で求められる精度に応じて曲率１／Ｒの最大値を定めることができる。曲率１／Ｒが最大となる操作量に対応づける操作量としては，一般的なオペレータが最終仕上げの施工を行う際の操作量（但し，アームシリンダ６が動作を開始する操作量よりは大きい）としても良い。
【００４４】
補完後設計面Ｓ１の曲率１／Ｒの最小値は，例えばアーム１２の回動軸からバケット８の爪先までの最大長さの逆数に設定できる。通常，フロント作業装置１５の動作平面において，アーム１２の回動軸とバケット８の回動軸を通過する直線上にバケット爪先が位置するときに，アーム１２の回動軸からバケット８の爪先までの距離は最大値となる。このとき，補完後設計面Ｓ１の半径Ｒはアーム１２の回動軸からバケット８の爪先までの最大長さに一致し，アーム１２の動作のみで円弧状の補完後設計面Ｓ１をなぞることができる。そのため，ブーム指令速度に変動が生じてもバケット８が２つの設計面の下方に侵入することを防止できる。この場合の曲率１／Ｒ（最小値）は，アーム１２操作の際に操作レバー装置１ｄに入力できる操作量の最大値（フル操作）に対応づけることができる。
【００４５】
なお，このように曲率１／Ｒの最小値を定めた場合，補完後設計面Ｓ１の大きさによっては，隣り合う２つの設計面上に円弧の端点を置けない場合がある。その場合は，隣り合う２つの設計面上に収まるような円弧の半径をＲの最大値とすることができる。また，図５（ｃ）に示すように，隣り合う２つの設計面Ｐ１Ｐ２，Ｐ２Ｐ３のいずれかの設計面（図の例では設計面Ｐ１Ｐ２）の隣に位置する他の設計面（図の例では設計面Ｐ０Ｐ１）上に円弧の端点（図の例では端点Ｐ２’）が位置するように補完後設計面Ｓ１を生成することもできる
曲率１／Ｒの最大値，最小値については，上記で例示した値の他，オペレータが任意の値に設定できるように構成しても良い。
【００４６】
上記で言及した内容に基づけば，操作レバー操作１ｄに入力されるアーム操作量に対する補完後設計面Ｓ１の曲率１／Ｒの関係は単調減少の関係となり得る。すなわち，アーム操作量が増加するつれて，補完後設計面Ｓ１の曲率１／Ｒが常に減少する関係となり得る。なお，曲率１／Ｒを半径Ｒに言い換えると，アーム操作量が増加するつれて，補完後設計面Ｓ１の半径Ｒが常に増加する単調増加の関係となり得る。
【００４７】
なお，アームシリンダ６の動作が開始しないほど操作レバー装置１ｄに対するアーム操作量が小さい場合（すなわち，操作レバー装置１ｄに対する操作量が，アームシリンダ６が動作を開始する操作量未満の場合）には，補完後設計面生成部１４０は，補完後設計面Ｓ１の生成を中断しても良い。
【００４８】
（補完後設計面Ｓ１の複数の平面（線分）による近似）
上記で説明したように，曲面状（曲線状（より具体的には円弧Ｐ２’Ｐ２．１））の補完後設計面Ｓ１を生成して補完後設計面生成部１４０の処理を終了しても良いが，本実施形態では，曲面状の補完後設計面Ｓ１を複数の平面（線分）で近似した補完後設計面Ｓ２を生成する。
【００４９】
そこで，図５（ｄ）に示すように，補完後設計面生成部１４０は図５（ｂ）の円弧Ｐ２’Ｐ２．１をｎ個の面に近似・分割した面（近似補完面）を補完後設計面Ｓ２とし，面Ｐ２’Ｐ２．１，面Ｐ２．１Ｐ２．２，…，面Ｐ２．ｎ−１Ｐ２．ｎのｎ個の設計面（平面）から成る補完後設計面データを演算する。補完後設計面データは各平面の傾斜角度情報を含む。円弧の分割数ｎは，測量精度，測量間隔などに応じて定めることができる。一例として，１０ｃｍ間隔で測量点データを取得するような環境であれば，円弧を長さ１０ｃｍ程度の線分で分割するようなｎを設定できる。
【００５０】
このように曲面状の補完後設計面Ｓ１を複数の平面で補完したものを新たな補完後設計面Ｓ２とすると，例えば後述する偏差演算部１１０で演算されるバケット爪先（作業点）と各平面との距離（偏差データ）の演算が単純になり，曲面状の補完後設計面Ｓ１のコントローラ５００の演算負荷が軽減される。
【００５１】
（偏差演算部１１０）
偏差演算部１１０は，姿勢データと寸法データとから演算するバケット８の爪先の位置と，補完後設計面生成部１４０からの補完後設計面データとから，バケット８の爪先と補完後設計面Ｓ２を構成する各面との距離（偏差）をそれぞれ演算し，それらを偏差データとして出力する。偏差データには，補完後設計面Ｓ２を生成する際に元となった２つの設計面Ｐ１Ｐ２，Ｐ２Ｐ３とバケット爪先の距離（偏差）をそれぞれ演算して含めても良いし，その他の設計面の偏差を演算して含めても良い。
【００５２】
（目標面設定部１５０）
目標面設定部１５０は，補完後設計面生成部１４０で生成した補完後設計面も含め，フロント作業装置１５の動作平面上に規定された複数の設計面のうちいずれか１つの面上に目標面（半自動掘削制御のための制御対象面）を設定し，その目標面に関する情報（例えば，目標面の位置データ）を目標面データとして出力する。本実施形態の目標面設定部１５０は，偏差演算部１１０からの偏差データのうちで最も小さい距離（偏差）を選択し，当該選択した偏差データと当該選択した偏差データに係る面（目標面）の情報とを併せて目標面データとして出力する。より具体的には，目標面設定部１５０は，偏差演算部１１０から出力される偏差データに基づいて，補完後設計面Ｓ２を構成する複数の平面のうちバケット爪先（作業点）との距離が最も小さい面を目標面として設定し，当該目標面に係る目標面データを出力する。
【００５３】
なお，本実施形態では偏差データ（各平面と作業点との距離）の大小に応じて目標面を設定したが，特許文献１の実施形態の一つと同様に，半自動掘削制御によって油圧シリンダに発生すべき目標速度の大小に応じて目標面を設定するように構成しても良い。本実施形態の場合，具体的には，補完後設計面Ｓ２を構成する複数の平面のうち，半自動掘削制御によるブームシリンダ５の目標速度（ブーム上げ方向の目標速度）が最も大きくなる平面を目標面として設定しても良い。
【００５４】
（目標速度演算部１２０）
目標速度演算部１２０は，姿勢データと，寸法データと，操作量データと，目標面データ（目標面の位置データ）とに基づいて，作業装置に設定した作業点（バケット爪先）の移動範囲が目標面上または目標面の上方に保持されるように，作業点（バケット爪先）の目標速度を演算し，それを目標速度データとして出力する。目標速度の演算方法の具体例として，アーム操作量に基づいて目標速度の目標面に沿う方向の成分を定め，バケット爪先と目標面の偏差（距離）に基づいて当該目標速度の目標面に垂直な方向の成分を定める方法がある。これと異なる方法としては，アーム１２が操作量通りに動作しつつ，バケット爪先の目標面に垂直な方向の速度がバケット爪先と目標面の偏差に基づいた値となるような目標速度を定める方法がある。
【００５５】
（アクチュエータ速度演算部１３０）
アクチュエータ速度演算部１３０は，寸法データと，姿勢データと，目標速度データとに基づいて，作業点（バケット爪先）の速度である目標速度を，バケット爪先に目標速度を生じさせるのに必要なブームシリンダ５，アームシリンダ６，バケットシリンダ７の目標速度（目標アクチュエータ速度）を運動学的な演算により算出する。ブームシリンダ５，アームシリンダ６，バケットシリンダ７の目標速度は，それぞれ，ブーム速度，アーム速度，バケット速度とも称する（図４参照）。
【００５６】
（メインコントローラ５００の処理のフローチャート）
図８は、上述の演算の流れを示したメインコントローラ５００が実行する処理のフローチャートである。以下では、図４に示したメインコントローラ５００内の各部を主語として各処理（手順Ｓ１−Ｓ９）を説明する場合があるが、各処理を実行するハードウェアはメインコントローラ５００である。
【００５７】
まず，情報処理部１００は，操作量データに基づいて操作レバー１ｄによるアーム操作（掘削操作）が検出された場合に手順Ｓ３に移行する（手順Ｓ１，Ｓ２）。手順Ｓ２でアーム操作が検出されない場合には，アーム操作が検出されるまで手順Ｓ２を繰り返す。
【００５８】
手順Ｓ３では，補完後設計面生成部１４０は，操作レバー装置１ｄによるアーム１２に対する操作量のデータ（操作量データ）と，設計面設定装置１８からの設計面データとを用いて，上述の方法に基づいて複数の平面から成る補完後設計面Ｓ２（図５（ｄ）参照）を角度の異なる２つの設計面（図５の例における設計面Ｐ１Ｐ２と設計面Ｐ２Ｐ３）の連結部の上方に生成し，生成した補完後設計面Ｓ２に含まれる各平面の位置情報や傾斜角度情報を含む補完後設計面データを目標面設定部１５０に出力する。
【００５９】
手順Ｓ４では，偏差演算部１１０は，フロント作業装置１５の寸法データと，各フロント部材１１，１２，８の姿勢データとを用いてバケット爪先（作業点）の位置を演算し，補完後設計面Ｓ２に含まれる各平面とバケット爪先との偏差（距離）をそれぞれ演算する。そして，演算した複数の偏差を偏差データとして目標面設定部１５０に出力する。
【００６０】
手順Ｓ６では，目標面設定部１５０は，手順Ｓ４で演算された複数の偏差を相互に比較することでその中で最も値が小さい偏差を選出し，その選出した偏差に係る平面を半自動掘削制御の制御対象たる目標面として設定する。そして，設定した目標面の位置情報，傾斜角度情報，及びバケット爪先との偏差情報を併せて，目標面データとして目標速度演算部１２０に出力する。
【００６１】
手順Ｓ７では，目標速度演算部１２０は，目標面設定部１５０からの目標面データに含まれる目標面とバケット爪先との偏差（距離）と，操作レバー装置１ｃ，１ｄの操作量とから，バケット爪先を目標面に沿って移動させるためにバケット爪先に発生させるべき目標速度を演算し，それを目標速度データとしてアクチュエータ速度演算部１３０に出力する。ここでは，（１）操作量データに含まれるアーム操作量に基づいて，目標速度において目標面に沿う方向の速度成分（水平速度成分）を算出し，（２）目標面データに含まれるバケット爪先と目標面の偏差（距離）に基づいて，当該目標速度において目標面に垂直な方向の速度成分（垂直速度成分）を算出し，（３）上記（１）および（２）で演算した２つの速度成分を加算して目標速度とする。なお，偏差と垂直速度成分の関係は，偏差がゼロのときは垂直速度成分もゼロで，偏差が増加するほど垂直速度成分（ただし，垂直速度成分は下向きの方向を有する）も増加するように予め設定されている。このように目標速度を演算すると，バケット爪先の移動範囲が目標面上または目標面の上方に保持される。特にバケット爪先が目標面上に位置する場合（偏差がゼロの場合）には垂直速度成分がゼロに保持されて水平速度成分のみとなるので，例えばアームを操作するだけでバケット爪先を目標面に沿って移動させることができる。
【００６２】
手順Ｓ８では，アクチュエータ速度演算部１３０は，目標速度演算部１２０からの目標速度と，寸法データ及び姿勢データとから，手順Ｓ７で演算した目標速度をバケット爪先に生じさせるのに必要なブームシリンダ５，アームシリンダ６，バケットシリンダ７それぞれの目標速度（目標アクチュエータ速度）を算出し，それらを制御弁駆動部２００に出力する（手順Ｓ８）。アームシリンダ６の目標速度をアーム操作量に即して規定し，そのときのバケット動作がないもの（すなわちバケットシリンダ７の目標速度はゼロ）と仮定すると，半自動掘削制御ではブームシリンダ５だけが自動的に動作することとなる。
【００６３】
制御弁駆動部２００は，手順Ｓ８で演算した目標アクチュエータ速度に基づいて，実際に各シリンダ５，６，７が目標アクチュエータ速度で動作するような制御弁駆動信号を演算し出力する。このようにして，制御弁駆動信号により，コントロールバルブ２０が駆動され，車体が動作する。
【００６４】
（作用・効果）
上記のように構成された本実施形態に係る油圧ショベルでは，フロント作業装置１５の動作平面上に規定された複数の設計面の施工時において，バケット８が２つの設計面の連結部を通過する際に，そのバケット通過方向に沿って傾斜角度が徐々に変化するｎ個の平面によって，当該２つの設計面の上方に当該２つの設計面を滑らかに接続する補完後設計面Ｓ２が生成される。補完後設計面Ｓ２の曲率（換言するとｎ個の平面の傾斜角度の変化の割合）は，補完後設計面Ｓ２の生成時におけるオペレータのアーム操作量によって規定される。これによりバケット８が２つの設計面の連結部を通過する際には，バケット通過方向に沿って傾斜角度が徐々に変化するｎ個の平面のうちいずれか１つの平面を目標面として半自動掘削制御が行われる。これにより，オペレータの操作量の大小に関わらず，上記２つの設計面のいずれにもバケット８が侵入することなく，かつ，作業性を損なわずに掘削成形作業を行うことができる。
【００６５】
たとえば，図６の線分Ｐ１Ｐ２，線分Ｐ２Ｐ３を２つの設計面として図中の矢印の向きに沿ってバケット８を移動させながら設計面を施工する場合，当該２つの設計面の上に補完後設計面Ｓ２（図５（ｄ）も参照）が生成され，その結果，油圧ショベルは，線分Ｐ１Ｐ２’，補完後設計面Ｓ２，線分Ｐ２．ｎＰ３を設計面として動作する。この時，半自動掘削制御によりブーム１１に生じる指令速度（ブームシリンダ目標速度）は時間経過とともに図７のように変化する。バケット８が線分Ｐ１Ｐ２から線分Ｐ２Ｐ３に移る過程でのブーム指令速度の変化は図７中の点線囲み部Ａ１に相当する。補完後設計面Ｓ２は図中の矢印に沿って徐々に傾斜角度が変化する複数の平面によって構成されており目標面が切り替わったときのブーム指令速度の変化を抑制でき，図１３（ａ），（ｂ）に示した先行技術におけるブーム指令速度の変化に比して極めて穏やかな変化となる。また，アーム操作量の増加に応じて補完後設計面Ｓ２の曲率が小さくなるため，例えアーム操作量が大きくてもブーム１１の動作の遅れによってバケット８が設計面に侵入することを防止できる。すなわち本実施形態によれば施工精度と作業速度を両立できる。
【００６６】
また，実際の施工において最終的に設計面を仕上げる場合には，一般にオペレータはアーム操作量を充分に小さくするので，生成される補完後設計面の曲率は充分大きくなって元々の２つの設計面に近づくため（例えば，バケット爪先の角丸みの曲率に近づくため），当該２つの設計面に沿った精度の良い掘削作業をすることが可能である。なお，この場合，アーム操作量が充分小さいので，ブーム指令速度の変化も小さく，ブーム１１の動作の遅れによってバケット８が設計面に侵入することはない。
【００６７】
＜第２の実施形態＞
続いて，第２の実施形態について説明する。なお，第１の実施形態と共通する部分については，適宜説明を省略する。
【００６８】
第２の実施形態の制御システムについて，図９を用いて説明する。
【００６９】
第２の実施形態においては，偏差演算部１１０は，設計面データと，姿勢データと，寸法データとから，設計面データが含む複数の設計面それぞれとバケット爪先（作業点）との偏差を演算し，出力する。なお，偏差を演算する設計面はバケット爪先（作業点）から所定の範囲に存在するものに限定してもよい。
【００７０】
（補完後設計面生成部１７０）
補完後設計面生成部１７０は，設計面データと，操作量データとから，第１の実施形態の補完後設計面生成部１４０と同様にして，円弧状（曲面状）の補完後設計面Ｓ１（図５（ｂ）参照）を生成し，その位置や形状に関する情報を補完後設計面データとして出力する。
【００７１】
（近傍点情報演算部１８０）
近傍点情報演算部１８０は，寸法データと姿勢データとから，バケット爪先（作業点）の位置を演算し，補完後設計面データを用いて，円弧状の補完後設計面Ｓ１上でバケット爪先から最も近い点を近傍点として演算する。そして，当該近傍点の位置や角度（当該近傍点における接線の角度）を第１近傍点データ（位置，角度が含まれる）として出力し，バケット爪先と当該近傍点の偏差を第２近傍点データ（偏差が含まれる）として出力する。なお，第１近傍点データと第２近傍点データを併せて近傍点データと総称することがある。
【００７２】
（目標面設定部１５０）
目標面設定部１５０は，偏差演算部１１０から入力される偏差データのうち補完後設計面Ｓ１の両端が位置する２つの設計面の偏差と，近傍点情報演算部１８０から入力される第２近傍点データに含まれる近傍点の偏差との中から，偏差が最も小さいものを選出し，その選出した偏差に係る設計面または近傍点の接線を目標面として設定する。また，設計面データと，第１近傍点データ（位置，角度）の中から，目標面に係るものを目標面の位置および角度として選択する。目標面設定部１５０は，選択した目標面の偏差と位置および角度を併せて目標面データとして目標速度演算部１２０に出力する。
【００７３】
他の部分は第１の実施形態と同様である。
【００７４】
（メインコントローラ５００の処理のフローチャート）
図１０は，上述の演算を含む，メインコントローラ５００の処理の流れを示したフローチャートである。
【００７５】
情報処理部１００は，操作レバー１ｃ，１ｄが操作されると処理を開始する（手順Ｓ１，Ｓ２）。
【００７６】
補完後設計面生成部１７０は，操作量データと設計面データとを用いて，補完後設計面データを演算する（手順Ｓ３）。
【００７７】
近傍点情報演算部１８０は，寸法データと，姿勢データとを用いてバケット爪先位置を演算し，補完後設計面データに含まれる曲面においてバケット先端から最も近い点である近傍点の位置と，当該近傍点の角度（近傍点における接線の角度）と，当該近傍点とバケット爪先の偏差（距離）とを演算し，これらを近傍点データ（第１近傍点データ及び第２近傍点データ）として出力する（手順Ｓ４）。
【００７８】
偏差演算部１１０は，寸法データと，姿勢データとを用いてバケット爪先位置を演算し，設計面データに含まれる複数の設計面と，バケット爪先とのそれぞれの偏差（距離）を演算する（手順Ｓ５）。
【００７９】
目標面設定部１５０は，偏差演算部１１０から入力される偏差のうち補完後設計面Ｓ１の両端が位置する２つの設計面の偏差と，近傍点情報演算部１８０から入力される第２近傍点データ（偏差）とを併せて相互に比較し，その中で最も値が小さい偏差に係る設計面又は近傍点の接線を目標面（半自動掘削制御の制御対象）として設定する。さらに，設計面データおよび近傍点データ（位置，角度）から目標面に係るものを選択し，それを目標面の偏差と併せて，目標面データとして出力する（手順Ｓ６）。
【００８０】
目標速度演算部１２０は，目標面の位置や角度，偏差，操作量とからバケット爪先の目標速度を演算する（手順Ｓ７）。
【００８１】
アクチュエータ速度演算部１３０は，手順Ｓ７で演算した目標速度と，寸法データ及び姿勢データとから，手順Ｓ７で演算した目標速度をバケット爪先に生じさせるために必要なブームシリンダ５，アームシリンダ６，バケットシリンダ７それぞれの目標速度（目標アクチュエータ速度）を算出する（手順Ｓ８）。
【００８２】
制御弁駆動部２００は，手順Ｓ８で演算した目標アクチュエータ速度を元に，実際に各シリンダ５，６，７が目標アクチュエータ速度で動作するような制御弁駆動信号を出力する（手順Ｓ９）。
【００８３】
（効果）
本実施形態においては，バケット爪先の移動とともに時々刻々と変化する円弧（補完後設計面Ｓ１（図５（ｂ）参照））上の点（近傍点）とバケット爪先の距離（偏差）を求める必要があるため，第１の実施形態に比して演算が複雑化するが，円弧状の補完後設計面Ｓ１を直線で近似しないので，より滑らかなバケット動作が可能となる。
【００８４】
＜第３の実施形態＞
続いて，第３の実施形態について説明する。なお，第１の実施形態と共通する部分については，適宜説明を省略する。
【００８５】
第１の実施形態において，図１１（ａ）に示すような２つの設計面Ｐ１Ｐ２，Ｐ２Ｐ３の連結部Ｐ２に上に凸の形状の面（法肩）が形成されている場合に，補完後設計面生成部１４０が当該２つの設計面Ｐ１Ｐ２，Ｐ２Ｐ３の下方に図１１（ｂ）に示すような補完後設計面Ｓ３を生成してしまったときには，その補完後設計面Ｓ３に沿って掘削作業を行うと連結部Ｐ２の周辺でバケット８が２つの設計面Ｐ１Ｐ２，Ｐ２Ｐ３の下方に侵入してしまう。
【００８６】
これを防ぐには，上に凸な面を形成する２つの設計面Ｐ１Ｐ２，Ｐ２Ｐ３に対しては，補完後設計面Ｓ３を含め補完後設計面生成部１４０による補完後設計面の生成を一切中断し，元の２つの設計面Ｐ１Ｐ２，Ｐ２Ｐ３に対して掘削を行う方法が考えられる。
【００８７】
本実施形態の補完後設計面生成部１４０は，上記以外の方法として次のような補完後設計面Ｓ４を生成する。
【００８８】
すなわち，補完後設計面生成部１４０は，図１１（ｃ）に示すように，２つの設計面Ｐ１Ｐ２，Ｐ２Ｐ３の連結部Ｐ２の形状が上に凸であり，フロント作業装置１５の動作平面上における油圧ショベルの前後方向において同図中の矢印が示すように一方側（図中の右側（第１方向））から他方側（図中の左側（第２方向））にバケット爪先（作業点）を移動させる場合，２つの設計面Ｐ１Ｐ２，Ｐ２Ｐ３のうち前記一方側の設計面Ｐ１Ｐ２の端部に前記一方側の設計面Ｐ１Ｐ２と同じ傾きで一端が接続する第１の円弧面ｓ４１と，第１の円弧面ｓ４１の他端側に一端が接続し，２つの設計面Ｐ１Ｐ２，Ｐ２Ｐ３のうち前記他方側の設計面Ｐ２Ｐ３に前記他方側の設計面Ｐ２Ｐ３と同じ傾きで他端が接続する第２の円弧面ｓ４２とを有する面を補完後設計面Ｓ４として生成する。この場合の補完後設計面Ｓ４は，その一方側の端部が連結部Ｐ２に位置する。
【００８９】
図示の２つの円弧面ｓ４１，ｓ４２の半径Ｒ４１，Ｒ４２は同じで，その曲率（１／Ｒ４１，１／Ｒ４２）の大きさは第１の実施形態と同じように定めることができる。円弧面ｓ４１は上に凸の形状で，円弧面ｓ４２は下に凸の形状である。２つの円弧面ｓ４１，ｓ４２の連結部である点Ｐ２．１における２つの円弧面ｓ４１，ｓ４２の傾きは一致させることが好ましい。なお，２つの円弧面ｓ４１，ｓ４２の半径Ｒ（曲率１／Ｒ）は必ずしも一致していなくても良い。また，２つの円弧面ｓ４１，ｓ４２を一点で接続せず，線分や曲線を介して接続しても良い。この時，各円弧面ｓ４１，ｓ４２の接続部の傾きと線分や曲線の傾きは全て一致させることが好ましい。
【００９０】
他の部分は第１の実施形態と同様である。あるいは，第２の実施形態と同様に構成しても良い。
【００９１】
本実施形態のように２つの設計面が上に凸の形状を形成する場合（２つの設計面が法肩を形成している場合）には，補完後設計面生成部１４０において図１１（ｃ）に示したような補完後設計面Ｐ４を生成すれば，バケット８が２つの設計面の連結部を通過する際に，オペレータの操作量によらずバケット８が２つの設計面のいずれにも侵入することなく，かつ，作業性を損なわずに掘削成形作業を行うことができる。
【００９２】
＜その他＞
なお，第１および第２の実施形態では，補完後設計面Ｒ１，Ｒ２は曲率１／Ｒが一定な円弧として生成したが，補完後設計面上の位置に応じて曲率１／Ｒを変更しても良い。その例を図１４に示す。
【００９３】
図１４は，補完後設計面上の位置Ｌと曲率Ｃの関係式の例を示しており，全長がＬｔｏｔａｌの補完後設計面における位置Ｌの基準（Ｌ＝０）を補完後設計面の一方側の端点（基準点）に設定し，補完後設計面における曲率Ｃの最大値を円弧半径に基づき１／Ｒとしている。
【００９４】
図１４（ａ）の例では，補完後設計面の一方側の端点から中間点に至るまで直線的に曲率Ｃを増加させ，その後，中間点から他方側の端点に至るまで同じ割合で曲率Ｃを減少させている。
【００９５】
図１４（ｂ）の例では，補完後設計面上の位置に応じて曲率Ｃを正弦波や余弦波のように曲線的に増減させている。曲率は補完後設計面の両端で最小になっており，中間点で最大（１／Ｒ）になっている。
【００９６】
また，図１４（ｃ）に示すように，補完後設計面の一方側の端点（基準点）から第１距離（例えば，Ｌ＝Ｌｔｏｔａｌ／４）に達するまでは曲率Ｃを変化（増加）させ，その後，第１距離から第２距離（例えば，Ｌ＝Ｌｔｏｔａｌ×３／４）に達するまでは曲率Ｃを一定（１／Ｒ）に保持し，最後に第２距離から他方側の端点（Ｌ＝Ｌｔｏｔａｌ）に達するまでは再び曲率Ｃを変化（低減）させても良い。
【００９７】
このように補完後設計面上の位置ごとに曲率Ｃを設定すると，補完後設計面生成部１４０，１７０における補完後設計面の生成演算が複雑になるが，半自動掘削制御時のフロント作業装置１５の動作はより滑らかになる。なお，第３の実施形態においても，同様にして曲率を変えてよい。
【００９８】
なお，本発明は，上記の実施の形態に限定されるものではなく，その要旨を逸脱しない範囲内の様々な変形例が含まれる。例えば，本発明は，上記の実施の形態で説明した全ての構成を備えるものに限定されず，その構成の一部を削除したものも含まれる。また，ある実施の形態に係る構成の一部を，他の実施の形態に係る構成に追加又は置換することが可能である。
【００９９】
また、上記のコントローラ５００に係る各構成や当該各構成の機能及び実行処理等は、それらの一部又は全部をハードウェア（例えば各機能を実行するロジックを集積回路で設計する等）で実現しても良い。また、コントローラ５００に係る構成は、演算処理装置（例えばＣＰＵ）によって読み出し・実行されることでコントローラ５００の構成に係る各機能が実現されるプログラム（ソフトウェア）としてもよい。当該プログラムに係る情報は、例えば、半導体メモリ（フラッシュメモリ、ＳＳＤ等）、磁気記憶装置（ハードディスクドライブ等）及び記録媒体（磁気ディスク、光ディスク等）等に記憶することができる。
【０１００】
また，上記の各実施の形態の説明では，制御線や情報線は，当該実施の形態の説明に必要であると解されるものを示したが，必ずしも製品に係る全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えて良い。
【符号の説明】
【０１０１】
１ａ…走行用右操作レバー，１ｂ…走行用左操作レバー，１ｃ…右操作レバー，１ｄ…左操作レバー，２…油圧ポンプ装置，２ａ…第１ポンプ，２ｂ…第２ポンプ，３ａ…右走行油圧モータ，３ｂ…左走行油圧モータ，４…旋回油圧モータ，５…ブームシリンダ（油圧アクチュエータ），６…アームシリンダ（油圧アクチュエータ），７…バケットシリンダ（油圧アクチュエータ），８…バケット（フロント部材），９…下部走行体（車体），１０…上部旋回体（車体），１１…ブーム（フロント部材），１２…アーム（フロント部材），１３ａ…姿勢センサ，１３ｂ…姿勢センサ，１３ｃ…姿勢センサ，１３ｄ…車体姿勢センサ（姿勢センサ），１４…エンジン，１５…フロント作業装置，１８…設計面設定装置，１９…車体情報記憶装置，２０…コントロールバルブ，２１…バケット方向制御弁，２１ａ…バケットクラウド電磁弁，２１ｂ…バケットダンプ電磁弁，２２…ブーム方向制御弁，２２ａ…ブーム上げ電磁弁，２２ｂ…ブーム下げ電磁弁，２３…アーム方向制御弁，２３ａ…アームクラウド電磁弁，２３ｂ…アームダンプ電磁弁，２６…リリーフ弁，２７…リリーフ弁，１００…情報処理部，１１０…偏差演算部，１２０…目標速度演算部，１３０…アクチュエータ速度演算部，１４０…補完後設計面生成部，１５０…目標面設定部，１７０…補完後設計面生成部，１８０…近傍点情報演算部，５００…メインコントローラ
【図１】
2021059931.tif 000003
【図２】
2021059931.tif 000004
【図３】
2021059931.tif 000005
【図４】
2021059931.tif 000006
【図５】
2021059931.tif 000007
【図６】
2021059931.tif 000008
【図７】
2021059931.tif 000009
【図８】
2021059931.tif 000010
【図９】
2021059931.tif 000011
【図１０】
2021059931.tif 000012
【図１１】
2021059931.tif 000013
【図１２】
2021059931.tif 000014
【図１３】
2021059931.tif 000015
【図１４】
2021059931.tif 000016
【国際調査報告】
2021059931.tif 000017
2021059931.tif 000018
2021059931.tif 000019
2021059931.tif 000020