(57)【特許請求の範囲】
【請求項１】
複数のフロント部材を有するフロント作業装置と、
前記複数のフロント部材を駆動する複数のアクチュエータと、
前記複数のアクチュエータを操作する複数の操作部と、
前記複数の操作部のそれぞれに対して、実操作量に基づき操作反力を付与する反力付与装置と、
この反力付与装置に対する制御信号を生成するために、前記各操作部の実操作量を検出する操作量検出部と、
前記フロント作業装置の一部の目標軌跡を決定する軌跡決定部と、
前記複数のフロント部材が駆動することにより移動する前記フロント作業装置の一部の位置を検出する位置検出部と、
前記目標軌跡に沿うように前記フロント作業装置の一部の目標速度を決定する目標速度決定部を含む制御装置と、を備えた建設機械であって、
前記制御装置が、
前記目標速度に基づいて、前記複数のフロント部材のそれぞれの目標操作量を決定する目標操作量決定部と、
前記複数のフロント部材のそれぞれの目標操作量と実操作量について、目標操作量よりも実操作量が大きいフロント部材がある場合、そのフロント部材を駆動するアクチュエータを操作する操作部に対して前記反力付与装置により付与される操作反力を増加させる補正を実行し、目標操作量よりも実操作量が小さいフロント部材がある場合、そのフロント部材を駆動するアクチュエータを操作する操作部に対して前記反力付与装置により付与される操作反力を減少させる補正を実行する反力補正制御部とを有することを特徴とする建設機械。
【請求項２】
請求項１に記載の建設機械において、
前記反力補正制御部によって、前記反力付与装置により付与される操作反力を減少させる補正を実行した操作反力の大きさは、少なくとも前記操作部の非操作時に前記操作部が中立位置に戻る大きさ以上であることを特徴とする建設機械。
【請求項３】
請求項１または２に記載の建設機械において、
前記複数のフロント部材のうち、特定のフロント部材に対して、目標操作量よりも実操作量が小さく、かつ、実操作量を小さくする操作が実行された場合に、前記反力補正制御部は、その特定のフロント部材を駆動するアクチュエータを操作する操作部に対して前記操作反力を増加させることを特徴とする建設機械。
【請求項４】
請求項１または２に記載の建設機械において、
前記実操作量が、前記目標操作量を含む予め設定した操作範囲内にあるか否かを判定する目標到達判定部を備え、
前記反力補正制御部は、前記目標到達判定部により前記実操作量が前記目標操作量を含む予め設定した操作範囲内にあると判定されたとき、前記操作部に対して前記反力付与装置により付与される操作反力を減少させる補正を実行することを特徴とする建設機械。
【請求項５】
請求項１または２に記載の建設機械において、
前記軌跡決定部により決定された前記目標軌跡と、前記位置検出部により検出された前記フロント作業装置の一部の位置との間の距離が予め設定した閾値よりも大きい場合、前記反力補正制御部による前記操作反力の補正を実行しないことを特徴とする建設機械。
【請求項６】
請求項１または２に記載の建設機械において、
前記フロント作業装置の予め設定された部位の実速度を演算する実速度演算部を備え、
前記目標速度決定部は、前記目標速度の大きさを前記実速度の大きさと同じ値として決定することを特徴とする建設機械。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、建設機械に関する。
【背景技術】
【０００２】
ブーム、アーム、バケットなどの複数のフロント部材で構成されるフロント作業装置を備えた油圧ショベルなどの建設機械が知られている（特許文献１参照）。フロント作業装置は、各フロント部材のそれぞれに対応した操作部材が操作されることで駆動される。特許文献１に記載の建設機械の操作装置は、各操作部材の操作によるフロント作業装置の作業範囲境界への接近の度合いに応じた操作反力を各操作部材の操作に対してそれぞれ付与するように反力付与手段を制御する反力制御手段を備えている。
【０００３】
特許文献１に記載の反力制御手段は、フロント作業装置の姿勢と各操作部材の操作とに基づき、各操作部材の操作による所定時間後のフロント作業装置と作業範囲境界との距離をそれぞれ演算する。反力制御手段は、演算された距離が、フロント作業装置の現在位置と作業範囲境界との距離よりも短くなるような操作部材の操作に対してのみ、操作反力を付与するように反力付与手段を制御する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−３２０８４６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
フロント作業装置は、複数のフロント部材により構成されているため、たとえば、直線掘削作業など、バケットの爪先を直線的な目標軌跡に沿って動かす作業を行う場合、複数のフロント部材を複合的に動作させる必要があり、操作に熟練を要していた。また、熟練したオペレータであっても、高精度かつ高速な作業は容易ではなく、長時間作業を行うと疲労を招いて作業効率が低下するという問題がある。
【０００６】
特許文献１では、操作反力を用いて操作者を補助することについて提案されているが、上記問題点を解決することができるものではなかった。
【課題を解決するための手段】
【０００７】
本発明に係る建設機械は、複数のフロント部材を有するフロント作業装置と、複数のフロント部材を駆動する複数のアクチュエータと、複数のアクチュエータを操作する複数の操作部と、複数の操作部のそれぞれに対して、実操作量に基づき操作反力を付与する反力付与装置と、この反力付与装置に対する制御信号を生成するために、各操作部の実操作量を検出する操作量検出部と、フロント作業装置の一部の目標軌跡を決定する軌跡決定部と、複数のフロント部材が駆動することにより移動するフロント作業装置の一部の位置を検出する位置検出部と、目標軌跡に沿うようにフロント作業装置の一部の目標速度を決定する目標速度決定部を含む制御装置と、を備えた建設機械であって、制御装置が、目標速度に基づいて、複数のフロント部材のそれぞれの目標操作量を決定する目標操作量決定部と、複数のフロント部材のそれぞれの目標操作量と実操作量について、目標操作量よりも実操作量が大きいフロント部材がある場合、そのフロント部材を駆動するアクチュエータを操作する操作部に対して反力付与装置により付与される操作反力を増加させる補正を実行し、目標操作量よりも実操作量が小さいフロント部材がある場合、そのフロント部材を駆動するアクチュエータを操作する操作部に対して反力付与装置により付与される操作反力を減少させる補正を実行する反力補正制御部とを有することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、目標軌跡に沿った作業を簡単に行うことができ、作業効率の向上を図ることができる。
【図面の簡単な説明】
【０００９】
【図１】本実施の形態が適用される建設機械の側面図。
【図２】本実施の形態に係るコントローラの概略構成を示す図。
【図３】左操作レバーと右操作レバーの操作方向に対応する油圧ショベルの動作を説明する図。
【図４】目標軌跡ＴＬの決定方法について説明する図。
【図５】斜面の均し作業を示す図。
【図６】（ａ）は、爪先Ｐｂの実速度ベクトルＶＡｃを表す図。（ｂ）は、爪先Ｐｂの目標速度ベクトルＶＴｃを表す図。
【図７】実操作角θと基準操作反力ＦＢとの関係を示す図。
【図８】コントローラにより実行される操作反力制御プログラムによる処理の一例を示すフローチャート。
【図９】コントローラにより実行される操作反力制御プログラムによる第１補正制御処理および第２補正制御処理の一例を示すフローチャート。
【図１０】実操作角θに応じて、反力付与装置により発生される操作反力Ｆの特性を示す図。
【図１１】操作反力の補正方法の変形例（変形例１−１，１−２，１−３）を示す図。
【図１２】操作反力の補正方法の変形例（変形例１−４）を示す図。
【発明を実施するための形態】
【００１０】
図１は、本実施の形態が適用される建設機械の一例である油圧ショベル（バックホウ）１００の側面図である。なお、説明の便宜上、図１に示したように前後および上下方向を規定する。図１に示すように、油圧ショベル１００は、走行体１０１と、走行体１０１上に旋回可能に搭載された旋回体１０２とを備える。走行体１０１は、左右一対のクローラを走行モータによって駆動することにより走行する。
【００１１】
旋回体１０２の前部左側には運転室１０７が設けられ、運転室１０７の後部にはエンジン室が設けられている。エンジン室には、動力源であるエンジンや油圧機器等が収容されている。エンジン室の後部には、作業時の機体のバランスをとるためのカウンタウエイト１０９が取り付けられている。旋回体１０２の前部右側にはフロント作業装置１０３が設けられている。
【００１２】
フロント作業装置１０３は、複数のフロント部材、すなわちブーム１０４、アーム１０５、および、バケット１０６を備える。ブーム１０４は、基端部が旋回体１０２の前部に回動可能に取り付けられている。アーム１０５は、その一端がブーム１０４の先端に回動可能に取り付けられている。ブーム１０４およびアーム１０５は、ブームシリンダ１０４ａおよびアームシリンダ１０５ａによってそれぞれ駆動されて起伏する。バケット１０６は、アーム１０５の先端において、アーム１０５に対して上下方向に回動可能に取り付けられ、バケットシリンダ１０６ａによって駆動される。
【００１３】
図２は、本実施の形態に係るコントローラ１２０の概略構成を示す図である。油圧ショベル１００は、コントローラ１２０を備えている。コントローラ１２０は、ＣＰＵや記憶装置であるＲＯＭおよびＲＡＭ、その他の周辺回路などを有する演算処理装置を含んで構成され、油圧ショベル１００の各部の制御を行っている。
【００１４】
コントローラ１２０には、運転室１０７内に配設される電気式の左操作レバー１１１の操作方向および実操作角に相当する信号を出力する操作量センサ１１１ｄおよび電気式の右操作レバー１１２の操作方向および実操作角に相当する信号を出力する操作量センサ１１２ｄが接続されている。実操作角（実操作量）とは、操作レバー１１１，１１２の中立位置ＮＰからの傾き角である。コントローラ１２０には、左操作レバー１１１および右操作レバー１１２の操作方向および実操作角θに相当する信号が入力される。コントローラ１２０は、操作量検出部１２０ｄを機能的に備えている。操作量検出部１２０ｄは、各操作量センサ１１１ｄ，１１２ｄからの信号に基づいて、左操作レバー１１１および右操作レバー１１２の操作方向および実操作角θを検出する。図３は、左操作レバー１１１と右操作レバー１１２の操作方向に対応する油圧ショベル１００の動作を説明する図である。左操作レバー１１１は運転席の左側に位置し、右操作レバー１１２は運転席の右側に位置している。
【００１５】
左操作レバー１１１は、ブーム１０４に対するアーム１０５の回動動作、および、旋回体１０２の旋回動作を操作する操作部材である。左操作レバー１１１を中立位置ＮＰから前方に傾けると、アーム押し動作が行われる。アーム押し動作とは、アームシリンダ１０５ａが収縮し、ブーム１０４に対し、アーム１０５の相対角度が広がる方向に、アーム１０５が実操作角に応じた速度で回動する（図１において時計回りに回動する）動作である。左操作レバー１１１を中立位置ＮＰから後方に傾けると、アーム引き動作が行われる。アーム引き動作とは、アームシリンダ１０５ａが伸長し、アーム１０５をブーム１０４側に折りたたむように、アーム１０５が実操作角に応じた速度で回動する（図１において反時計回りに回動する）動作である。
【００１６】
左操作レバー１１１を中立位置ＮＰから左方に傾けると、旋回モータ（不図示）が駆動され、旋回体１０２が実操作角に応じた速度で左旋回する。左操作レバー１１１を中立位置ＮＰから右方に傾けると、旋回モータ（不図示）が駆動され、旋回体１０２が実操作角に応じた速度で右旋回する。
【００１７】
右操作レバー１１２は、旋回体１０２に対するブーム１０４の回動動作、および、アーム１０５に対するバケット１０６の回動動作を操作する操作部材である。右操作レバー１１２を中立位置ＮＰから前方に傾けると、ブーム下げ動作が行われる。ブーム下げ動作とは、ブームシリンダ１０４ａが収縮し、ブーム１０４が実操作角に応じた速度で下方に回動する動作である。右操作レバー１１２を中立位置ＮＰから後方に傾けると、ブーム上げ動作が行われる。ブーム上げ動作とは、ブームシリンダ１０４ａが伸長し、ブーム１０４が実操作角に応じた速度で上方に回動する動作である。
【００１８】
右操作レバー１１２を中立位置ＮＰから左方に傾けると、バケット掘削動作が行われる。バケット掘削動作とは、バケットシリンダ１０６ａが伸長し、バケット１０６の爪先（先端）Ｐｂがアーム１０５の腹面に近づくように、バケット１０６が実操作角に応じた速度で回動する（図１において反時計回りに回動する）動作である。右操作レバー１１２を中立位置ＮＰから右方に傾けると、バケット放土動作が行われる。バケット放土動作とは、バケットシリンダ１０６ａが収縮し、バケット１０６の爪先Ｐｂがアーム１０５の腹面から離れるように、バケット１０６が実操作角に応じた速度で回動する（図１において時計回りに回動する）動作である。
【００１９】
左操作レバー１１１を中立位置ＮＰから左斜め前方などの斜め方向に傾けると、アーム１０５と旋回体１０２を複合的に動作させることができる。右操作レバー１１２を中立位置ＮＰから左斜め前方などの斜め方向に傾けると、ブーム１０４とバケット１０６を複合的に動作させることができる。このため、本実施の形態における油圧ショベル１００では、左操作レバー１１１および右操作レバー１１２を同時に操作することで、最大、４つの動作を複合的に行わせることができる。
【００２０】
図２に示すように、コントローラ１２０には、左操作レバー１１１に対してオペレータの操作方向とは反対側の力である操作反力を発生させる反力付与装置１１１ｒが接続されている。コントローラ１２０には、右操作レバー１１２に対してオペレータの操作方向とは反対側の力である操作反力を発生させる反力付与装置１１２ｒが接続されている。
【００２１】
反力付与装置１１１ｒおよび反力付与装置１１２ｒは、同様の構成であり、複数の電磁モータなどの電磁アクチュエータで構成することができる。後述するように、コントローラ１２０が決定した操作反力を表す制御信号が反力付与装置１１１ｒ，１１２ｒに出力されると、反力付与装置１１１ｒ，１１２ｒにより、左操作レバー１１１および右操作レバー１１２に対して操作反力が発生する。
【００２２】
コントローラ１２０には、コントロールバルブ１０８が接続される。コントローラ１２０は、上述した左操作レバー１１１および右操作レバー１１２の操作方向および実操作角に基づいて、コントロールバルブ１０８を制御する制御信号を出力する。コントロールバルブ１０８はコントローラ１２０からの制御信号に応じて切り換えられる。コントロールバルブ１０８は、図示しない油圧ポンプから各フロント部材のアクチュエータ（ブームシリンダ１０４ａ、アームシリンダ１０５ａおよびバケットシリンダ１０６ａ）に供給される圧油の流れを制御する。このため、各フロント部材は、左操作レバー１１１および右操作レバー１１２の操作方向に応じた動作を、実操作角に応じた速度で駆動される。
【００２３】
コントローラ１２０には、フロント部材の位置を求めるための複数の角度センサが接続され、各角度センサで検出された信号が入力される。複数の角度センサには、ブーム角度センサ１１０ａと、アーム角度センサ１１０ｂと、バケット角度センサ１１０ｃとが含まれる。ブーム角度センサ１１０ａは、ブーム１０４と旋回体１０２との接続部に設けられ、旋回体１０２に対するブーム１０４の回動角度を検出する。アーム角度センサ１１０ｂは、ブーム１０４とアーム１０５との接続部に設けられ、ブーム１０４に対するアーム１０５の回動角度を検出する。バケット角度センサ１１０ｃは、アーム１０５とバケット１０６との接続部に設けられ、アーム１０５に対するバケット１０６の回動角度を検出する。
【００２４】
コントローラ１２０は、姿勢演算部１２１と、目標軌跡決定部１２２と、実速度演算部１２３と、目標速度演算部１２４と、ベクトル分解部１２５と、目標操作量演算部１２６と、基準反力演算部１２７と、判定部１２８と、反力補正部１２９とを備える。
【００２５】
姿勢演算部１２１は、油圧ショベル１００の姿勢、すなわちフロント作業装置１０３を構成する各フロント部材であるブーム１０４、アーム１０５およびバケット１０６の位置を演算する。コントローラ１２０の記憶装置には、各フロント部材および旋回体１０２、走行体１０１の各部寸法の情報が記憶されている。
【００２６】
コントローラ１２０は、フロント部材の各部の寸法と、ブーム角度センサ１１０ａ、アーム角度センサ１１０ｂおよびバケット角度センサ１１０ｃで検出した情報を用いてバケット１０６の爪先Ｐｂを含む各フロント部材における予め設定された部位の位置を演算する。フロント部材の各部の寸法としては、ブーム１０４の回動支点からアーム１０５の回動支点までの寸法、アーム１０５の回動支点からバケット１０６の回動支点までの寸法、および、バケット１０６の回動支点からバケット１０６の爪先Ｐｂまでの寸法が含まれる。姿勢演算部１２１は、所定の制御周期ごとにバケット１０６の爪先Ｐｂの位置を演算する。
【００２７】
つまり、本実施の形態では、複数の角度センサ１１０ａ，１１０ｂ，１１０ｃからの情報と、複数のフロント部材の寸法の情報とから、複数のフロント部材が駆動することにより移動するバケット１０６の爪先Ｐｂの位置を検出することができる。
【００２８】
目標軌跡決定部１２２は、バケット１０６の爪先Ｐｂの目標軌跡を決定する。図４を参照して目標軌跡の決定方法の一例を説明する。図４は、目標軌跡ＴＬの決定方法について説明する図である。図４に示すように、オペレータがバケット１０６の爪先Ｐｂを第１の位置Ｐ１に配置し、位置設定スイッチ（不図示）を操作し、深さ設定スイッチ（不図示）により掘削深さｈ１の数値を入力する。これにより、目標軌跡決定部１２２は第１の位置Ｐ１から掘削深さｈ１だけ下方に離れた位置を第１設定点Ｐ１Ｔとして記憶装置に記憶させる。
【００２９】
オペレータがバケット１０６の爪先Ｐｂを第１の位置Ｐ１とは異なる第２の位置Ｐ２に配置し、位置設定スイッチ（不図示）を操作し、深さ設定スイッチ（不図示）により掘削深さｈ２の数値を入力する。これにより、目標軌跡決定部１２２は第２の位置Ｐ２から掘削深さｈ２だけ下方に離れた位置を第２設定点Ｐ２Ｔとして記憶装置に記憶させる。なお、第１設定点Ｐ１Ｔおよび第２設定点Ｐ２Ｔは、たとえば、基準位置である旋回中心点ＢＰからの水平方向距離と、旋回中心点ＢＰからの鉛直方向距離とで特定され、記憶装置に記憶される。
【００３０】
目標軌跡決定部１２２は、第１の位置Ｐ１から深さｈ１だけ下方に位置した第１設定点Ｐ１Ｔと、第２の位置Ｐ２から深さｈ２だけ下方に位置した第２設定点Ｐ２Ｔとを結んだ直線式を計算して、目標軌跡ＴＬとして設定する。
【００３１】
図５は、直線掘削作業の一例である斜面の均し作業を示す図である。図５に示す斜面の均し作業では、アーム引き動作と、ブーム上げ動作を複合することで実現できる。本実施の形態では、手動で操作を行う場合において、図５に示すように、バケット１０６の爪先Ｐｂが目標軌跡ＴＬに沿って移動するように、左操作レバー１１１および右操作レバー１１２に作用する操作反力を調整し、オペレータに対して適切な操作を促す反力補正制御が実行される。なお、本実施の形態では、説明の便宜上、バケット１０６および旋回体１０２を動作させる操作は実行しない場合における操作反力の補正制御について説明する。
【００３２】
図２に示す実速度演算部１２３は、爪先Ｐｂの実速度ベクトルＶＡｃを演算する。図６（ａ）は、爪先Ｐｂの実速度ベクトルＶＡｃを表す図である。実速度演算部１２３は、姿勢演算部１２１により演算された現時点のバケット１０６の位置と、１制御周期前に姿勢演算部１２１により演算されたバケット１０６の位置との差、ならびに１制御周期の時間に基づいて、バケット１０６の爪先Ｐｂの実速度ベクトルＶＡｃを演算する。
【００３３】
図２に示す目標速度演算部１２４は、目標軌跡ＴＬに沿うように爪先Ｐｂの目標速度ベクトルＶＴｃを決定する。図６（ｂ）は、爪先Ｐｂの目標速度ベクトルＶＴｃを表す図である。図６（ｂ）に示すように、爪先Ｐｂが目標軌跡ＴＬ上に位置している場合、爪先Ｐｂの目標速度ベクトルＶＴｃの方向は、目標軌跡ＴＬと平行な方向となる。また、本実施の形態では、爪先Ｐｂの目標速度ベクトルＶＴｃのノルムは、実速度ベクトルＶＡｃのノルムと同じ値に設定される（｜｜ＶＴｃ｜｜＝｜｜ＶＡｃ｜｜）。つまり、爪先Ｐｂの実速度の大きさを目標速度の大きさとして代用する。
【００３４】
図２に示すベクトル分解部１２５は、現時点におけるフロント作業装置１０３の姿勢に基づいて、図６（ａ）に示すように、実速度ベクトルＶＡｃをアーム速度ベクトルＶＡａとブーム速度ベクトルＶＡｂとに分解する。ベクトル分解部１２５は、現時点におけるフロント作業装置１０３の姿勢に基づいて、図６（ｂ）に示すように、目標速度ベクトルＶＴｃをアーム速度ベクトルＶＴａとブーム速度ベクトルＶＴｂとに分解する。
【００３５】
アーム速度ベクトルＶＡａ，ＶＴａは、ブーム１０４に対するアーム１０５の回動動作に起因する速度ベクトルであり、その方向はアーム１０５の回動支点（ブーム１０４との接続点）と爪先Ｐｂとを結ぶ直線に対して垂直な方向である。ブーム速度ベクトルＶＡｂ，ＶＴｂは、旋回体１０２に対するブーム１０４の回動動作に起因する速度ベクトルであり、その方向はブーム１０４の回動支点（旋回体１０２との接続点）と爪先Ｐｂとを結ぶ直線に対して垂直な方向である。
【００３６】
図２に示す目標操作量演算部１２６は、目標値であるアーム速度ベクトルＶＴａのノルムを実測値であるアーム速度ベクトルＶＡａのノルムで割ることで補正係数Ｋａを演算する（Ｋａ＝｜｜ＶＴａ｜｜／｜｜ＶＡａ｜｜）。目標操作量演算部１２６は、目標値であるブーム速度ベクトルＶＴｂのノルムを実測値であるブーム速度ベクトルＶＡｂのノルムで割ることで補正係数Ｋｂを演算する（Ｋｂ＝｜｜ＶＴｂ｜｜／｜｜ＶＡｂ｜｜）。
【００３７】
補正係数Ｋａ，Ｋｂは、実操作角と目標操作角との差に相当する係数となり、実操作角θに補正係数Ｋａ，Ｋｂを乗じることで目標操作角θｔが得られる。つまり、補正係数が１の場合、目標操作角θｔと実操作角θは一致していることを表している。補正係数が１よりも大きい場合、目標操作角θｔよりも実操作角θが小さいことを表し、補正係数が１よりも小さい場合、目標操作角θｔよりも実操作角θが大きいことを表している。
【００３８】
目標操作量演算部１２６は、左操作レバー１１１のアーム引き動作方向の実操作角θ（以下、実操作角θａとも記す）に補正係数Ｋａを乗じて、目標となるアーム速度ベクトルＶＴａを発生させる目標操作角θｔを求める（θｔ＝Ｋａ・θａ）。目標操作量演算部１２６は、右操作レバー１１２のブーム上げ動作方向の実操作角θ（以下、実操作角θｂとも記す）に補正係数Ｋｂを乗じて、目標となるブーム速度ベクトルＶＴｂを発生させる目標操作角θｔを求める（θｔ＝Ｋｂ・θｂ）。
【００３９】
基準反力演算部１２７は、実操作角θに基づいて、反力付与装置１１１ｒ，１１２ｒにより発生させる操作反力Ｆを決定する。図７は、実操作角θと基準操作反力ＦＢとの関係を示す図である。コントローラ１２０の記憶装置には、左操作レバー１１１および右操作レバー１１２の実操作角θａ，θｂの増加にしたがって大きくなる基準操作反力ＦＢの特性Ｎａ，Ｎｂがルックアップテーブル形式で記憶されている。後述する操作反力の補正がなされない場合、この特性Ｎａ，Ｎｂにしたがって実操作角θａ，θｂに応じた操作反力Ｆが、反力付与装置１１１ｒ，１１２ｒによって操作レバー１１１，１１２に付与される。
【００４０】
実操作角θａに基づく特性Ｎａと実操作角θｂに基づく特性Ｎｂは、同一の特性でもよいし、異なる特性でもよい。本実施の形態では、特性Ｎａと特性Ｎｂが同一であるとして、特性Ｎａ，Ｎｂを総称して特性Ｎと記し、実操作角θａと実操作角θｂを総称して実操作角θと記し、説明する。なお、左操作レバー１１１および右操作レバー１１２については、総称して、単に操作レバーＲとも記す。
【００４１】
特性Ｎは、実操作角θが増加するにしたがって、基準操作反力ＦＢが直線的に増加する特性であり、その最大値はＦｍａｘである。基準反力演算部１２７は、操作レバーＲが前後方向に操作されると、特性Ｎを参照し、操作量センサ１１１ｄ，１１２ｄで検出された実操作角θに応じた基準操作反力ＦＢを演算する。
【００４２】
図２に示す判定部１２８は、操作レバーＲの実操作角θが増加したか、減少したか、あるいは変更が無いかを判定する。判定部１２８は、現時点において操作量センサ１１１ｄ，１１２ｄで検出された実操作角θと、１制御周期前に操作量センサ１１１ｄ，１１２ｄで検出された実操作角θとを比較する。判定部１２８は、現時点の実操作角θが１制御周期前の実操作角θよりも大きい場合、操作レバーＲの実操作角θが増加したと判定する。判定部１２８は、現時点の実操作角θが１制御周期前の実操作角θに比べて小さい場合、操作レバーＲの実操作角θが減少したと判定する。判定部１２８は、現時点の実操作角θが１制御周期前の実操作角θと同じである場合、操作レバーＲの実操作角θに変更が無いと判定する。
【００４３】
反力補正部１２９は、補正係数Ｋａ，Ｋｂに基づいて、操作反力の補正を行う。以下、反力補正部１２９による操作反力の補正の制御内容について説明する。左操作レバー１１１に対する操作反力Ｆの補正の制御と、右操作レバー１１２に対する操作反力Ｆの補正の制御とは略同様である。このため、左操作レバー１１１および右操作レバー１１２を総称して操作レバーＲとして、操作レバーＲに対する操作反力Ｆの補正の制御について説明する。なお、補正係数Ｋａ，Ｋｂについては総称して補正係数Ｋと記し、実操作角θａ，θｂについては上述と同様に総称して実操作角θと記す。
【００４４】
反力補正部１２９は、操作レバーＲの実操作角θの変化にしたがって、第１補正制御および第２補正制御のいずれかを実行する。判定部１２８により、操作レバーＲの実操作角θが減少していると判定された場合、第１補正制御を実行する。第１補正制御は、判定部１２８により、操作レバーＲの実操作角θが増加していると判定されるまで継続される。
【００４５】
反力補正部１２９は、判定部１２８により、操作レバーＲの実操作角θが増加していると判定された場合、第２補正制御を実行する。第２補正制御は、判定部１２８により、操作レバーＲの実操作角θが減少していると判定されるまで継続される。
【００４６】
−第１補正制御（実操作角減少時の反力の補正制御）−
反力補正部１２９による第１補正制御について説明する。反力補正部１２９は、補正係数Ｋが閾値β未満であるか否か、ならびに、補正係数Ｋが閾値α以上であるか否かを判定する。閾値αは、１よりも大きい値であり、予め記憶装置に記憶されている（α＞１）。閾値βは、１よりも小さい値であり、予め記憶装置に記憶されている（β＜１）。
【００４７】
閾値αおよび閾値βは、目標軌跡ＴＬの許容範囲に応じて設定される。許容範囲は、図６に示すように、目標軌跡ＴＬから上方に所定量だけオフセットされた目標軌跡上限ＴＬＵと、目標軌跡ＴＬから下方に所定量だけオフセットされた目標軌跡下限ＴＬＬとの間の範囲である。許容範囲は、要求される斜面の精度に応じて設定されるものである。なお、許容範囲は、オペレータにより任意に設定変更できる構成とすることもできる。目標軌跡ＴＬから目標軌跡上限ＴＬＵまでの距離と、目標軌跡ＴＬから目標軌跡下限ＴＬＬまでの距離は、異なる値としてもよいし、同じ値としてもよい。
【００４８】
実操作角と目標操作角との差が大きく、補正係数Ｋが閾値β未満であると判定された場合、反力補正部１２９は、補正量ΔＦを基準操作反力ＦＢに加算して、操作反力Ｆを補正する（Ｆ＝ＦＢ＋ΔＦ）。実操作角と目標操作角との差に相当する補正係数Ｋが、予め設定した閾値β以上、かつ、閾値α未満であると判定された場合、反力補正部１２９は、実操作角θが目標操作角θｔに到達したと判定する。実操作角θが目標操作角θｔに到達したと判定されると、反力補正部１２９は、補正量ΔＦを基準操作反力ＦＢから減算して、操作反力Ｆを補正する（Ｆ＝ＦＢ−ΔＦ）。補正係数Ｋが閾値α以上であると判定された場合、反力補正部１２９は、補正を行わずに、基準操作反力ＦＢをそのまま操作反力Ｆとして出力する（Ｆ＝ＦＢ）。
【００４９】
なお、図１０に示すθ１は補正係数Ｋが閾値αとなる実操作角θであり、操作角θ２は補正係数Ｋが閾値βとなる実操作角θである。つまり、補正係数Ｋがβ以上α未満であるときには、実操作角θが目標操作角θｔを含む予め設定した操作範囲内（図１０（ａ）のθ１〜θ２）にあることを意味する。
【００５０】
−第２補正制御（実操作角増加時の反力の補正制御）−
反力補正部１２９による第２補正制御について説明する。反力補正部１２９は、補正係数Ｋが閾値γ以上であるか否か、ならびに、補正係数Ｋが閾値β未満であるか否かを判定する。閾値γは、閾値αよりも大きい値であり、予め記憶装置に記憶されている（γ＞α）。
【００５１】
閾値γは、特性Ｎによって決定された基準操作反力ＦＢから補正量ΔＦだけ減少させる補正を実行した操作反力Ｆの大きさが、少なくとも操作レバーＲの非操作時に操作レバーＲが中立位置ＮＰに戻る大きさ以上となるように設定されている。本実施の形態では、操作反力Ｆの補正制御を実行する実操作角θの下限値は、補正係数Ｋが閾値γとなる操作角θ０となる（図１０（ｂ）参照）。換言すれば、実操作角θが操作角θ０よりも小さいときは、操作反力Ｆの補正制御は実行されない。実操作角θが操作角θ０のときの操作反力Ｆ０は、オペレータが操作レバーＲを放した後、操作レバーＲの機械抵抗（連結構造の摩擦等）に抗して、操作レバーＲが中立位置ＮＰに戻ることのできる大きさ以上の操作反力である。
【００５２】
補正係数Ｋが閾値γ以上であると判定された場合、反力補正部１２９は、補正を行わずに、基準操作反力ＦＢをそのまま操作反力Ｆとして出力する（Ｆ＝ＦＢ）。
【００５３】
実操作角と目標操作角との差に相当する補正係数Ｋが、予め設定した閾値β以上、かつ、閾値γ未満の範囲内であると判定された場合、反力補正部１２９は、実操作角θが目標操作角θｔを含む予め設定した操作範囲内（図１０（ｂ）のθ０〜θ２）にあると判定する。実操作角θが上記操作範囲内（図１０（ｂ）のθ０〜θ２）にあると判定されたとき、反力補正部１２９は、補正量ΔＦを基準操作反力ＦＢから減算して、操作反力Ｆを補正する（Ｆ＝ＦＢ−ΔＦ）。実操作角と目標操作角との差が大きく、補正係数Ｋが閾値β未満であると判定された場合、反力補正部１２９は、補正量ΔＦを基準操作反力ＦＢに加算して、操作反力Ｆを補正する（Ｆ＝ＦＢ＋ΔＦ）。
【００５４】
補正量ΔＦは、正の値であり、予め記憶装置に記憶されている（ΔＦ＞０）。なお、左操作レバー１１１に対する操作反力の補正量ΔＦと、右操作レバー１１２に対する操作反力の補正量ΔＦとは、同じ値としてもよいし、異なる値としてもよい。
【００５５】
図２に示す判定部１２８は、基準反力演算部１２７により特性Ｎに基づいて決定された基準操作反力ＦＢを補正する制御を実行するか否かを決定する。判定部１２８は、爪先Ｐｂの位置から目標軌跡ＴＬに対する垂線を下ろし、爪先Ｐｂから垂線の足までの距離（以下、垂線距離Ｄ）を演算する。垂線距離Ｄは、目標軌跡決定部１２２により決定された目標軌跡ＴＬと、姿勢演算部１２１で演算された爪先Ｐｂの位置との差である。
【００５６】
判定部１２８は、垂線距離Ｄが、閾値Ｄｔ未満の場合、補正実行条件が成立していると判定する。判定部１２８は、垂線距離Ｄが閾値Ｄｔ以上の場合、補正実行条件が成立していないと判定する。閾値Ｄｔは、オペレータにより任意に設定される。たとえば、爪先Ｐｂが目標軌跡ＴＬから１ｍ以上離れている場合には、補正制御を実行しないようにするには、予め、閾値Ｄｔとして１ｍを設定しておけばよい。
【００５７】
上述したコントローラ１２０による操作反力を補正する制御は、補正実行条件が成立している場合には実行し、補正実行条件が成立していない場合には実行しない。
【００５８】
図８および図９は、コントローラ１２０により実行される操作反力制御プログラムによる処理の一例を示すフローチャートである。図９は、図８に示す第１補正制御処理および第２補正制御処理の内容を示している。図８および図９のフローチャートに示す処理は、オペレータの操作に基づいて目標軌跡ＴＬが設定された後、コントローラ１２０に接続される操作案内スイッチ（不図示）のＯＮにより開始され、所定の制御周期ごとにステップＳ１００以降の処理が繰り返し実行され、操作案内スイッチ（不図示）のＯＦＦにより終了する。
【００５９】
図８に示すように、ステップＳ１００において、コントローラ１２０は、各種情報を取得し、ステップＳ１１０へ進む。ステップＳ１００で取得される各種情報には、角度センサ１１０ａ，１１０ｂ，１１０ｃで検出された各フロント部材の回動角度の情報、操作量センサ１１１ｄ，１１２ｄで検出された操作レバーの実操作角θの情報が含まれる。
【００６０】
ステップＳ１１０において、コントローラ１２０は、記憶装置に記憶されている特性Ｎ（図７）のテーブルを参照し、ステップＳ１１０で取得した実操作角θの情報に基づいて、基準操作反力ＦＢを演算して、ステップＳ１１５へ進む。
【００６１】
ステップＳ１１５において、コントローラ１２０は、記憶装置に記憶された各フロント部材の各部寸法と、ステップＳ１００で取得した各フロント部材の回動角度の情報とに基づいて、油圧ショベル１００の作業姿勢を演算し、ステップＳ１２０へ進む。ステップＳ１１５の姿勢演算処理では、旋回体１０２の旋回中心点ＢＰを基準としたバケット１０６の爪先Ｐｂの位置や、アーム１０５の回動支点の位置、バケット１０６の回動支点の位置を演算する。ステップＳ１１５の姿勢演算処理では、爪先Ｐｂから目標軌跡ＴＬまでの垂線距離Ｄを演算する。
【００６２】
ステップＳ１２０において、コントローラ１２０は、補正実行条件が成立したか否かを判定する。ステップＳ１２０で肯定判定されると、すなわち垂線距離Ｄが閾値Ｄｔ未満であり、補正実行条件が成立していると判定されると、ステップＳ１２５へ進む。ステップＳ１２０で否定判定されると、すなわち垂線距離Ｄが閾値Ｄｔ以上であり、補正実行条件が成立していないと判定されると、ステップＳ１８０へ進む。
【００６３】
ステップＳ１８０において、コントローラ１２０は、基準操作反力ＦＢをそのまま発生する操作反力Ｆとして決定し、ステップＳ１９０へ進む。すなわち、基準操作反力の補正を行わない。
【００６４】
ステップＳ１２５において、コントローラ１２０は、ステップＳ１１５で演算された爪先Ｐｂの位置（現時点の位置）と、１制御周期前のステップＳ１１５で演算された爪先Ｐｂの位置との差に基づいて、爪先Ｐｂの実速度ベクトルＶＡｃを演算し、ステップＳ１３０へ進む。
【００６５】
ステップＳ１３０において、コントローラ１２０は、ステップＳ１１５で演算された爪先Ｐｂの位置と、目標軌跡ＴＬとに基づいて目標速度ベクトルＶＴｃを演算し、ステップＳ１３５へ進む。
【００６６】
ステップＳ１３５において、コントローラ１２０は、ベクトル分解処理を実行し、ステップＳ１４０へ進む。ベクトル分解処理では、ステップＳ１２５で演算された実速度ベクトルＶＡｃと、ステップＳ１１５で演算された各フロント部材の位置の情報とに基づいて、実速度ベクトルＶＡｃをアーム速度ベクトルＶＡａとブーム速度ベクトルＶＡｂとに分解する。ベクトル分解処理では、ステップＳ１３０で演算された目標速度ベクトルＶＴｃと、ステップＳ１１５で演算された各フロント部材の位置の情報とに基づいて、目標速度ベクトルＶＴｃをアーム速度ベクトルＶＴａとブーム速度ベクトルＶＴｂとに分解する。
【００６７】
ステップＳ１４０において、コントローラ１２０は、ステップＳ１３５で分解されたアーム速度ベクトルの目標値と実測値、ならびに、ブーム速度ベクトルの目標値と実測値に基づいて、補正係数Ｋを演算し（補正係数演算処理）、ステップＳ１４５へ進む。補正係数演算処理において、コントローラ１２０は、ステップＳ１３５で演算されたアーム速度ベクトルＶＴａ（目標値）のノルムをステップＳ１３５で演算されたアーム速度ベクトルＶＡａ（実測値）のノルムで割ることで補正係数Ｋａを演算する。補正係数演算処理において、コントローラ１２０は、ステップＳ１３５で演算されたブーム速度ベクトルＶＴｂ（目標値）のノルムをステップＳ１３５で演算されたブーム速度ベクトルＶＡｂ（実測値）のノルムで割ることで補正係数Ｋｂを演算する。
【００６８】
ステップＳ１４５において、コントローラ１２０は、ステップＳ１４０で演算された補正係数Ｋ（ＫａおよびＫｂ）をステップＳ１００で取得した実操作角θ（θａおよびθｂ）に乗じることで、目標操作角θｔを演算し、ステップＳ１５０へ進む。
【００６９】
ステップＳ１５０において、コントローラ１２０は、実操作角θが減少するレバー操作が実行されているか否かを判定する。１制御周期前のステップＳ１００で取得された実操作角θよりも現時点の実操作角θが小さい場合、ステップＳ１５０で肯定判定され、操作量減少フラグをオンし、ステップＳ１６０へ進む。
【００７０】
１制御周期前のステップＳ１００で取得された実操作角θよりも現時点の実操作角θが大きい場合、ステップＳ１５０で否定判定され、操作量減少フラグをオフし、ステップＳ１７０へ進む。ステップＳ１５０において、現時点の実操作角θと１制御周期前の実操作角θとの差が無い場合には、操作量減少フラグの状態に応じて、ステップＳ１６０またはステップＳ１７０へ移行するようになっている。すなわち、操作量減少フラグがオンであれば、ステップＳ１６０へ移行し、操作量減少フラグがオフであれば、ステップＳ１７０へ移行する。
【００７１】
ステップＳ１６０において、コントローラ１２０は、第１補正制御を実行して、ステップＳ１９０へ進む。ステップＳ１７０において、コントローラ１２０は、第２補正制御を実行して、ステップＳ１９０へ進む。
【００７２】
図９（ａ）は、第１補正制御処理の流れを示すフローチャートである。図９（ａ）に示すように、第１補正制御処理では、ステップＳ１４０で演算された補正係数Ｋと、記憶装置に記憶されている閾値とに基づいて、操作反力Ｆを決定する。
【００７３】
ステップＳ１６１において、コントローラ１２０は、補正係数Ｋが閾値β未満であるか否かを判定する。ステップＳ１６１で肯定判定されるとステップＳ１６３へ進み、ステップＳ１６１で否定判定されるとステップＳ１６５へ進む。
【００７４】
ステップＳ１６５において、コントローラ１２０は、補正係数Ｋが閾値β以上、閾値α未満であるか否かを判定する。ステップＳ１６５で肯定判定されるとステップＳ１６７へ進み、ステップＳ１６５で否定判定されるとステップＳ１６９へ進む。
【００７５】
ステップＳ１６３において、コントローラ１２０は、基準操作反力ＦＢに記憶装置に記憶されている補正量ΔＦ（一定値）を加算した値を補正後の操作反力Ｆとして決定し、ステップ１９０へ進む。
【００７６】
ステップＳ１６７において、コントローラ１２０は、基準操作反力ＦＢから記憶装置に記憶されている補正量ΔＦ（一定値）を減算した値を補正後の操作反力Ｆとして決定し、ステップＳ１９０へ進む。
【００７７】
ステップＳ１６９において、コントローラ１２０は、基準操作反力ＦＢをそのまま発生する操作反力Ｆとして決定し、ステップＳ１９０へ進む。すなわち、基準操作反力の補正を行わない。
【００７８】
図９（ｂ）は、第２補正制御処理の流れを示すフローチャートである。図９（ｂ）に示すように、第２補正制御処理では、ステップＳ１４０で演算された補正係数Ｋと、記憶装置に記憶されている閾値とに基づいて、操作反力Ｆを決定する。
【００７９】
ステップＳ１７１において、コントローラ１２０は、補正係数Ｋが閾値γ以上であるか否かを判定する。ステップＳ１７１で肯定判定されるとステップＳ１７３へ進み、ステップＳ１７１で否定判定されるとステップＳ１７５へ進む。
【００８０】
ステップＳ１７５において、コントローラ１２０は、補正係数Ｋが閾値β以上、閾値γ未満であるか否かを判定する。ステップＳ１７５で肯定判定されるとステップＳ１７７へ進み、ステップＳ１７５で否定判定されるとステップＳ１７９へ進む。
【００８１】
ステップＳ１７３において、コントローラ１２０は、基準操作反力ＦＢをそのまま発生する操作反力Ｆとして決定し、ステップＳ１９０へ進む。すなわち、基準操作反力の補正を行わない。
【００８２】
ステップＳ１７７において、コントローラ１２０は、基準操作反力ＦＢから記憶装置に記憶されている補正量ΔＦ（一定値）を減算した値を補正後の操作反力Ｆとして決定し、ステップＳ１９０へ進む。
【００８３】
ステップＳ１７９において、コントローラ１２０は、基準操作反力ＦＢに記憶装置に記憶されている補正量ΔＦ（一定値）を加算した値を補正後の操作反力Ｆとして決定し、ステップ１９０へ進む。
【００８４】
図８に示すように、ステップＳ１９０において、コントローラ１２０は、ステップＳ１６０，Ｓ１７０，Ｓ１８０で決定された操作反力Ｆを発生させるための制御信号を生成し、生成した制御信号を反力付与装置１１１ｒ，１１２ｒに出力する。
【００８５】
図１０を参照して、本実施の形態に係る油圧ショベル１００の主要な動作を斜面の均し作業を例にまとめると次のようになる。図１０は、実操作角θに応じて、反力付与装置１１１ｒ，１１２ｒにより発生される操作反力Ｆの特性を示す図である。図１０（ａ）は、実操作角θが減少するようなレバー操作が実行されたときに、実操作角θに応じて変化する操作反力Ｆの特性を示している。図１０（ｂ）は、実操作角θが増加するようなレバー操作が実行されたときに、実操作角θに応じて変化する操作反力Ｆの特性を示している。図１０（ａ），（ｂ）において、横軸は実操作角θであり、縦軸は操作反力Ｆである。
【００８６】
オペレータは、各操作レバー１１１，１１２を操作して、図４に示すように、バケット１０６の爪先Ｐｂを第１の位置Ｐ１と第２の位置Ｐ２に順番に配置し、それぞれの位置で位置設定スイッチ（不図示）を操作し、その位置での掘削深さｈ１，ｈ２の数値を深さ設定スイッチ（不図示）により入力する。これにより、コントローラ１２０によって目標軌跡ＴＬが設定され、記憶装置に記憶される。
【００８７】
オペレータは、各操作レバー１１１，１１２を操作して斜面の均し作業を行う。ここで、図５に示すように、バケット１０６の爪先Ｐｂの位置を目標軌跡ＴＬ上に位置させ、操作案内スイッチ（不図示）を操作する。これにより、スイッチ操作後の操作にしたがって操作反力の補正制御が実行される。
【００８８】
図１０（ａ）に示すように、たとえば、操作角θｓ１から実操作角θが減少するように操作レバーＲが操作されると、第１補正制御が実行される（ステップＳ１５０でＹｅｓ，Ｓ１６０）。操作角θｓ１は、実操作角θが目標操作角θｔ（θｔ＝Ｋ・θ）よりも大きい場合であって、かつ、実操作角θと目標操作角θｔとの差が大きい場合である（ステップＳ１６１でＹｅｓ）。なお、各操作レバー１１１，１１２の実操作角θのそれぞれが目標操作角θｔよりも大きいと、図６に示すように、｜｜ＶＡａ｜｜＞｜｜ＶＴａ｜｜，｜｜ＶＡｂ｜｜＞｜｜ＶＴｂ｜｜となる。
【００８９】
この場合、図１０（ａ）に示すように、操作反力Ｆが特性Ｎにより決定される基準操作反力ＦＢよりもΔＦだけ増加するように補正される（ステップＳ１６３）。このため、オペレータは通常よりも大きな操作反力を感じる。
【００９０】
オペレータは、大きな操作反力を感じることで、実操作角θが目標操作角θｔに比べて大きすぎていることを知ることができる。これにより、オペレータが、実操作角θを減少させるように操作レバー１１１，１１２を操作すると、図１０（ａ）に示すように、実操作角θの減少に伴って操作反力Ｆも徐々に小さくなる。
【００９１】
実操作角θが目標操作角θｔに近い操作角θ２を超えて小さくなると（ステップＳ１６１でＮｏ，Ｓ１６５でＹｅｓ）、操作反力Ｆが特性Ｎにより決定される基準操作反力ＦＢよりもΔＦだけ減少するように補正される（ステップＳ１６７）。なお、操作角θ２は、補正係数Ｋが閾値βとなる操作角である。
【００９２】
オペレータは、不連続的に操作反力Ｆが減少したことを感じることで、実操作角θが目標操作角θｔに近づいたことを知ることができる。これにより、オペレータは、実操作角θを変更しないように操作レバーＲを維持させる。
【００９３】
なお、実操作角θが目標操作角θｔよりも小さくなるように操作レバーＲが操作され、実操作角θが操作角θ１を超えて小さくなると（ステップＳ１６１でＮｏ，Ｓ１６５でＮｏ）、操作反力Ｆが特性Ｎにより決定される基準操作反力ＦＢとなる（ステップＳ１６９）。なお、操作角θ１は、補正係数Ｋが閾値αとなる操作角である。
【００９４】
オペレータは、不連続的に操作反力Ｆが増加したことを感じることで、実操作角θが目標操作角θｔを越えて小さくなりすぎてしまったこと知ることができる。これにより、オペレータは、実操作角θが目標操作角θｔに近づくように操作レバーＲを戻す操作を行う。
【００９５】
一方、図１０（ｂ）に示すように、たとえば、操作角θｓ２から実操作角θが増加するように操作レバーＲが操作されると、第２補正制御が実行される（ステップＳ１５０でＮｏ、Ｓ１７０）。操作角θｓ２は、実操作角θが目標操作角θｔよりも小さい場合であって、かつ、実操作角θと目標操作角θｔとの差が予め設定した範囲内（β以上γ未満）の場合である（ステップＳ１７１でＮｏ，Ｓ１７５でＹｅｓ）。なお、図示しないが、各操作レバー１１１，１１２の実操作角θのそれぞれが目標操作角θｔよりも小さいと、｜｜ＶＡａ｜｜＜｜｜ＶＴａ｜｜，｜｜ＶＡｂ｜｜＜｜｜ＶＴｂ｜｜となる。
【００９６】
この場合、図１０（ｂ）に示すように、操作反力Ｆが特性Ｎにより決定される基準操作反力ＦＢよりもΔＦだけ減少するように補正される（ステップＳ１７７）。このため、オペレータは通常よりも小さな操作反力を感じる。
【００９７】
オペレータは、小さな操作反力を感じることで、実操作角θが目標操作角θｔに比べて小さすぎていることを知ることができる。これにより、オペレータが、実操作角θを増加させるように操作レバーＲを操作すると、図１０（ｂ）に示すように、実操作角θの増加に伴って操作反力Ｆも徐々に大きくなる。
【００９８】
実操作角θが目標操作角θｔに近い操作角θ２を超えて大きくなると（ステップＳ１７１でＮｏ、ステップＳ１７５でＮｏ）、操作反力Ｆが特性Ｎにより決定される基準操作反力ＦＢよりもΔＦだけ増加するように補正される（ステップＳ１７９）。
【００９９】
オペレータは、不連続的に操作反力Ｆが増加したことを感じることで、実操作角θが目標操作角θｔを越えて大きくなりすぎてしまったこと知ることができる。これにより、オペレータは、実操作角θが目標操作角θｔに近づくように操作レバーＲを戻す操作を行う。
【０１００】
なお、操作角θ０〜θ１の操作範囲において、実操作角θが減少するように操作レバーＲが操作されると、すなわち、目標操作角θｔと実操作角θとの差が大きくなる操作が実行されると、第２補正制御から第１補正制御に切り替わる（ステップＳ１５０でＹｅｓ，Ｓ１６０）。これにより、減少補正されていた操作反力Ｆが不連続的に増加し、基準操作反力ＦＢに戻る（ステップＳ１６９）。
【０１０１】
オペレータは、不連続的に操作反力Ｆが増加したことを感じることで、実操作角θが目標操作角θｔから遠ざかるように操作レバーＲが操作されている、すなわち目標に向かう操作とは逆の操作が実行されていることを知ることができる。これにより、オペレータは、実操作角θｔが目標操作角θｔに近づくように操作レバーＲを戻す操作を行う。
【０１０２】
このように、本実施の形態によれば、操作反力Ｆを調整することで、バケット１０６の爪先Ｐｂの位置が目標軌跡ＴＬに沿って移動するような操作が行われるように、オペレータを案内することができる。
【０１０３】
以上説明した実施の形態によれば、以下のような作用効果を奏することができる。
（１）コントローラ１２０は、フロント部材の目標操作角θｔと実操作角θとの差が、予め設定した範囲よりも大きい場合（すなわち補正係数Ｋがβ未満の場合）、そのフロント部材を駆動するアクチュエータ１０３ａ，１０４ａを操作する操作レバー１１１，１１２に対して反力付与装置１１１ｒ，１１２ｒにより付与される操作反力を増加させる補正を実行する。コントローラ１２０は、フロント部材の目標操作角θｔと実操作角θとの差が、予め設定した範囲内の場合（すなわち補正係数Ｋがβ以上α未満の場合、またはβ以上γ未満の場合）、そのフロント部材を駆動するアクチュエータ１０３ａ，１０４ａを操作する操作レバー１１１，１１２に対して反力付与装置１１１ｒ，１１２ｒにより付与される操作反力を減少させる補正を実行する。
【０１０４】
このため、オペレータが操作レバー１１１，１１２を複合操作する際に、バケット１０６の爪先Ｐｂを目標軌跡ＴＬに沿って移動させるための適切な操作が行われるように、操作を案内することができる。
【０１０５】
（２）反力付与装置１１１ｒ，１１２ｒにより付与される操作反力を減少させる補正を実行した操作反力の大きさは、少なくとも操作レバー１１１，１１２の非操作時に操作レバー１１１，１１２が中立位置ＮＰに戻る大きさ以上である。これにより、オペレータが操作レバー１１１，１１２から手を放すと、自然に操作レバー１１１，１１２が中立位置ＮＰに戻るので、操作性がよい。また、緊急時に操作レバー１１１，１１２から手を放すことで、作業が継続されることを防止できる。
【０１０６】
（３）コントローラ１２０は、目標操作角θｔと実操作角θとの差が大きくなる操作が実行された場合に操作反力を増加させる。これにより、オペレータは、操作反力Ｆが増加したことを感じることで、実操作角θが目標操作角θｔから遠ざかるように操作レバーＲが操作されていることを知ることができる。
【０１０７】
（４）コントローラ１２０は、実操作角θが目標操作角θｔを含む予め設定した操作範囲内（θ１〜θ２）にあるか否かを判定する。コントローラ１２０は、実操作角θが目標操作角θｔを含む予め設定した操作範囲内（θ１〜θ２）にあると判定されたとき、操作レバー１１１，１１２に対して反力付与装置１１１ｒ，１１２ｒにより付与される操作反力を減少させる補正を実行する。
【０１０８】
オペレータは、操作反力が減少したことを感じることで、実操作角θが目標操作角θｔに近づいたことを知ることができる。これにより、オペレータは、目標軌跡ＴＬに沿った適切な作業を容易に行うことができる。
【０１０９】
（５）目標軌跡ＴＬと、検出されたバケット１０６の爪先Ｐｂの位置との差（たとえば垂線距離）Ｄが予め設定した閾値Ｄｔよりも小さい場合、操作反力の補正を実行し、目標軌跡ＴＬと、検出されたバケット１０６の爪先Ｐｂの位置との差Ｄが予め設定した閾値Ｄｔよりも大きい場合、操作反力の補正を実行しないようにした。目標軌跡ＴＬに沿った動作とは異なる動作を意図的に実施したい場合など、爪先Ｐｂが目標軌跡ＴＬから大きく離れているときには、操作反力の補正が実行されないため、上記異なる動作を実行するための操作性がよい。
【０１１０】
（６）バケット１０６の爪先Ｐｂの実速度ベクトルＶＡｃを演算し、目標速度ベクトルＶＴｃのノルムを実速度ベクトルＶＡｃのノルムと同じ値として決定するようにした。つまり、バケット１０６の爪先Ｐｂの目標速度は、実速度の大きさと同じ値として決定される。これにより、爪先Ｐｂを滑らかに動作させることができる。
【０１１１】
（７）操作反力を用いてオペレータに操作を案内する構成としたので、オペレータは、表示装置の表示画面を用いた画像ガイダンスやスピーカを用いた音声ガイダンスに比べて、より直感的に適切な操作を理解することができる。
【０１１２】
なお、本実施の形態では、姿勢演算部１２１が位置検出部に相当し、反力補正部１２９の一部機能が目標到達判定部に相当する。
【０１１３】
次のような変形も本発明の範囲内であり、変形例の一つ、もしくは複数を上述の実施形態と組み合わせることも可能である。
（変形例１）
操作反力の補正の方法は、上述した実施の形態に限定されない。
（変形例１−１）
図１１（ａ）は、図１０（ａ）と同様の図であり、操作反力の補正方法の変形例を示す図である。図１１（ａ）では、上述した実施の形態における操作反力の特性を二点鎖線で示している。上述した実施の形態では、第１補正制御において、実操作角θが目標操作角θｔよりも小さくなり、操作角θ１に達すると、基準操作反力ＦＢまで操作反力が増加する特性であった。
【０１１４】
これに対して、本変形例では、実操作角θが目標操作角θｔよりも小さくなり、操作角θ１に達すると、基準操作反力ＦＢからさらに補正量ΔＦだけ増加された操作反力が発生する。操作角θ１に達したときの操作反力の増加量が上述した実施の形態よりも大きいので、オペレータは、よりはっきりと、目標操作角θｔを越えて実操作角θが減少したことを認識できる。
【０１１５】
（変形例１−２）
図１１（ｂ）は、図１０（ｂ）と同様の図であり、操作反力の補正方法の変形例を示す図である。図１１（ｂ）では、上述した実施の形態における操作反力の特性を二点鎖線で示している。上述した実施の形態では、第２補正制御において、実操作角θが目標操作角θｔよりも大きくなり、操作角θ２に達すると、基準操作反力ＦＢからさらに補正量ΔＦだけ増加された操作反力が発生する特性であった。
【０１１６】
これに対して、本変形例では、実操作角θが目標操作角θｔよりも大きくなり、操作角θ２に達すると、操作反力Ｆを最大値Ｆｍａｘまで増加させる。操作角θ２に達したときの操作反力の増加量が上述した実施の形態よりも大きいので、オペレータは、よりはっきりと、目標操作角θｔを越えて実操作角θが増加したことを認識できる。
【０１１７】
（変形例１−３）
上述した実施の形態では、第２補正制御において、実操作角θが操作角θ０から目標操作角θｔに向かって増加するにしたがって、直線的に操作反力Ｆが増加する特性であった。これに対して、本変形例では、図１１（ｂ）に示すように、実操作角θが操作角θ０から増加し、操作角θ１を超えて大きくなると、操作反力が不連続的に減少する特性とされている。本変形例では、操作角θ０〜θ１では、基準操作反力ＦＢから補正量ΔＦ／２だけ減少させた操作反力Ｆを発生させ、操作角θ１〜θ２では、基準操作反力ＦＢから補正量ΔＦだけ減少させた操作反力Ｆを発生させている。このように、本変形例によれば、実操作角θを増加させる操作においても、目標操作角θｔに近づいたときに、操作反力が不連続的に減少する。このため、オペレータは、不連続的に操作反力Ｆが減少したことを感じることで、実操作角θが目標操作角θｔに近づいたことを知ることができる。
【０１１８】
（変形例１−４）
上述した実施の形態では、操作反力Ｆを不連続的に変化させる例について説明したが、本発明はこれに限定されない。たとえば、図１２（ａ）および図１２（ｂ）に示すように、実操作角θの増加および減少に応じて、連続的に操作反力Ｆを変化させてもよい。図１２に示す例では、補正量ΔＦが実操作角θに応じて変化する。この場合、操作反力Ｆの変化をオペレータがわかるように、実操作角θの変化量に対する操作反力Ｆの変化量の割合（傾き）を設定すればよい。
【０１１９】
（変形例２）
上述した実施の形態では、各フロント部材の位置を求めるために、各フロント部材の回動角度を検出する角度センサ１１０ａ，１１０ｂ，１１０ｃを設ける例について説明したが、本発明はこれに限定されない。角度センサ１１０ａ，１１０ｂ，１１０ｃに代えて、油圧シリンダのストロークを検出するストロークセンサを設けて、ストロークの情報から各フロント部材の位置を求めてもよい。
【０１２０】
（変形例３）
上述した実施の形態では、現時点の爪先Ｐｂが目標軌跡ＴＬ上にあった場合に目標速度演算部１２４が目標速度ベクトルＶＴｃを演算する例について説明したが本発明はこれに限定されない。現時点の爪先Ｐｂが目標軌跡ＴＬから離れた位置にある場合、目標速度演算部１２４は、目標軌跡ＴＬに向かって滑らかに爪先Ｐｂが移動するような遷移用目標軌跡ＴＬｔを演算し、この遷移用目標軌跡ＴＬｔに基づいて目標速度ベクトルＶＴｃを演算する。
【０１２１】
（変形例４）
実速度ベクトルＶＡｃ、アーム速度ベクトルＶＡａおよびブーム速度ベクトルＶＡｂの演算方法は、上述した実施の形態に限定されない。たとえば、左操作レバー１１１の実操作角θａに基づいてアーム速度ベクトルＶＡａを演算し、右操作レバー１１２の実操作角θｂに基づいてブーム速度ベクトルＶＡｂを演算し、両者を合成して実速度ベクトルＶＡｃを演算してもよい。
【０１２２】
（変形例５）
上述した実施の形態では、反力付与装置１１１ｒ，１１２ｒを複数の電磁モータで構成する例について説明したが、本発明はこれに限定されない。コイルばねと、コイルばねの全長を変更させるピストンとにより反力付与装置を構成してもよい。油圧や空圧などの圧力を利用して、反力を発生させてもよい。たとえば、反力シリンダと、反力シリンダの駆動を制御する電磁比例弁とにより反力付与装置を構成してもよい。
【０１２３】
（変形例６）
上述した実施の形態では、左操作レバー１１１および右操作レバー１１２が電気式の操作レバーである例について説明したが、本発明はこれに限定されない。油圧パイロット式の操作レバーに本発明を適用してもよい。
【０１２４】
（変形例７）
上述した実施の形態では、ブーム１０４とアーム１０５の複合動作により、斜面の均し作業を行う場合の例について説明したが、本発明はこれに限定されない。水平引きなどの作業に対して本発明を適用してもよい。ブーム１０４とアーム１０５に加え、バケット１０６の動作を加えた複合動作に本発明を適用することもできる。この場合、右操作レバー１１２の左右方向の傾き角に応じて、操作反力を決定する。
【０１２５】
（変形例８）
｜｜ＶＡａ｜｜＞｜｜ＶＴａ｜｜，｜｜ＶＡｂ｜｜＞｜｜ＶＴｂ｜｜となる場合（図６参照）や、｜｜ＶＡａ｜｜＜｜｜ＶＴａ｜｜，｜｜ＶＡｂ｜｜＜｜｜ＶＴｂ｜｜となる場合に限らない。｜｜ＶＡａ｜｜＞｜｜ＶＴａ｜｜，｜｜ＶＡｂ｜｜＜｜｜ＶＴｂ｜｜となる場合や、｜｜ＶＡａ｜｜＜｜｜ＶＴａ｜｜，｜｜ＶＡｂ｜｜＞｜｜ＶＴｂ｜｜となる場合にも本発明が適用される。
【０１２６】
（変形例９）
上述した実施の形態では、バケット１０６の爪先Ｐｂの位置の目標軌跡ＴＬに沿って動作する作業を例について説明したが、本発明はこれに限定されない。目標軌跡を決定するフロント作業装置の予め設定された部位として、爪先Ｐｂに代えて、たとえば、バケット１０６の回動中心の位置を採用してもよい。この場合、バケット１０６の回動中心の位置の目標軌跡ＴＬに沿って動作する作業について、本発明を適用することもできる。
【０１２７】
（変形例１０）
上述した実施の形態では、フロント作業装置がブーム１０４、アーム１０５およびバケット１０６を備えている例について説明したが本発明はこれに限定されない。旋回体１０２に回動可能に取り付けられる基端ブームと、基端ブームに回動可能に取り付けられる先端ブームと、先端ブームに回動可能に取り付けられるアーム１０５と、バケット１０６とを備えた、いわゆるツーピースタイプのフロント作業装置を備えた建設機械に本発明を適用してもよい。少なくとも２つ以上のフロント部材が目標軌跡ＴＬに沿って複合的に操作される種々のフロント作業装置に本発明を適用することができる。
【０１２８】
（変形例１１）
上述した実施の形態では、クローラ式のバックホウを例に説明したが、本発明はこれに限定されない。たとえば、ローディングショベルやホイール式油圧ショベルなど、目標軌跡ＴＬに沿って、少なくとも２つ以上のフロント部材を含む複数のフロント部材を有するフロント作業装置を備えた建設機械であって、少なくとも２つ以上のフロント部材が複合的に動作される種々の建設機械に本発明を適用することができる。
【０１２９】
上記では、種々の実施の形態および変形例を説明したが、本発明はこれらの内容に限定されるものではない。本発明の技術的思想の範囲内で考えられるその他の態様も本発明の範囲内に含まれる。
【符号の説明】
【０１３０】
１００  油圧ショベル、１０１  走行体、１０２  旋回体、１０３  フロント作業装置、１０３ａ  アクチュエータ、１０４  ブーム、１０４ａ  ブームシリンダ、１０５  アーム、１０５ａ  アームシリンダ、１０６  バケット、１０６ａ  バケットシリンダ、１０７  運転室、１０８  コントロールバルブ、１０９  カウンタウエイト、１１０ａ  ブーム角度センサ、１１０ｂ  アーム角度センサ、１１０ｃ  バケット角度センサ、１１１  左操作レバー、１１１ｄ  操作量センサ、１１１ｒ  反力付与装置、１１２  右操作レバー、１１２ｄ  操作量センサ、１１２ｒ  反力付与装置、１２０  コントローラ、１２０ｄ  操作量検出部、１２１  姿勢演算部、１２２  目標軌跡決定部、１２３  実速度演算部、１２４  目標速度演算部、１２５  ベクトル分解部、１２６  目標操作量演算部、１２７  基準反力演算部、１２８  判定部、１２９  反力補正部
Ｄ  垂線距離、Ｆ  操作反力、ＢＰ  旋回中心点、Ｄｔ  閾値、ＦＢ  基準操作反力、Ｋａ  補正係数、Ｋｂ  補正係数、ＮＰ  中立位置、Ｐｂ  爪先、ＴＬ  目標軌跡、ＴＬＬ  目標軌跡下限、ＴＬＵ  目標軌跡上限、ＶＡａ  アーム速度ベクトル、ＶＡｂ  ブーム速度ベクトル、ＶＡｃ  実速度ベクトル、ＶＴａ  アーム速度ベクトル、ＶＴｂ  ブーム速度ベクトル、ＶＴｃ  目標速度ベクトル
【図１】
0006373812.tif 000002
【図２】
0006373812.tif 000003
【図３】
0006373812.tif 000004
【図４】
0006373812.tif 000005
【図５】
0006373812.tif 000006
【図６】
0006373812.tif 000007
【図７】
0006373812.tif 000008
【図８】
0006373812.tif 000009
【図９】
0006373812.tif 000010
【図１０】
0006373812.tif 000011
【図１１】
0006373812.tif 000012
【図１２】
0006373812.tif 000013