(57)【要約】バケットシリンダの長さを精度よく、かつ、ショックを少なくして、目標位置に停止させること。バケットシリンダ長検出部１０１は、ブーム角度とベルクランク角度とに基づいてシリンダ長検出用テーブル１０２を参照し、バケットシリンダ長を検出する。バケット姿勢制御部１０３は、目標位置に到達するよう、バケットシリンダ長を制御する。バケットシリンダ長が目標値の手前に設定される設定値に到達するまではフィードバック制御が行われ、バケットシリンダ長が設定値に到達した後は目標値までオープンループ制御が行われる。
2011114974.tif 000002
【特許請求の範囲】
【請求項１】
建設車両（１０）の作業機（１４）に使用される所定の油圧シリンダ（３１）のシリンダ長を制御するための制御装置（１００）であって、
前記所定の油圧シリンダのシリンダ長を検出するシリンダ長検出部（１０１）と、
前記所定の油圧シリンダのシリンダ長を制御するシリンダ長制御部（１０３）であって、
（Ａ）前記シリンダ長が、制御の開始を指示する開始指示が入力されてから、目標値（Ｌｓ１）の手前に設定される設定値（Ｌ１）に到達するまでの第１領域では、予め設定される制御特性（１０４）と前記シリンダ長検出部により検出されるシリンダ長とに基づいて前記所定の油圧シリンダに作動油を供給することにより、シリンダ長をフィードバック制御し、
（Ｂ）前記シリンダ長が前記設定値から前記目標値に到達するまでの第２領域では、所定の割合で制御信号を減少させながら前記所定の油圧シリンダに作動油を供給することにより、シリンダ長をオープンループ制御する、
シリンダ長制御部（１０３）と、
を備える建設車両の作業機の制御装置。
【請求項２】
前記制御特性には、制御開始時のシリンダ長が制御閾値（Ｌ２）以下の場合に使用される第１制御特性（１０４Ａ）と、制御開始時のシリンダ長が前記制御閾値を超えている場合に使用される第２制御特性（１０４Ｂ）とが含まれており、
前記シリンダ長制御部は、前記開始指示が入力されたときのシリンダ長が前記制御閾値以下の場合に前記第１制御特性に基づいて前記フィードバック制御を行い、前記開始指示が入力されたときのシリンダ長が前記制御閾値を超えている場合に前記第２制御特性に基づいて前記フィードバック制御を行う、
請求項１に記載の建設車両の作業機の制御装置。
【請求項３】
前記制御特性には、制御開始時のシリンダ長が制御閾値（Ｌ２）以下の場合に使用される第１制御特性（１０４Ａ）と、制御開始時のシリンダ長が前記制御閾値を超えている場合に使用される第２制御特性（１０４Ｂ）とが含まれており、
前記所定の割合には、前記第１制御特性に対応する第１割合と、前記第２制御特性に対応する第２割合とが含まれており、
前記シリンダ長制御部は、
前記第１領域で前記第１制御特性が使用された場合、前記第２領域では前記第１割合を用いて前記所定の油圧シリンダに供給する作動油をオープンループ制御し、
前記第１領域で前記第２制御特性が使用された場合、前記第２領域では前記第２割合を用いて前記所定の油圧シリンダに供給する作動油をオープンループ制御する、
請求項１に記載の建設車両の作業機の制御装置。
【請求項４】
前記所定の油圧シリンダに加わる負荷を検出する負荷検出部（１０５）を備え、
前記シリンダ長制御部は、前記負荷検出部により検出される負荷に応じて、前記フィードバック制御を実行する、
請求項３に記載の建設車両の作業機の制御装置。
【請求項５】
前記シリンダ長制御部は、前記負荷検出部により検出される負荷に応じて、前記オープンループ制御を実行する、
請求項４に記載の建設車両の作業機の制御装置。
【請求項６】
前記第１制御特性及び前記第２制御特性は、負荷に応じてそれぞれ複数ずつ用意されており、
前記シリンダ長制御部は、
前記複数の第１制御特性の中から負荷に応じた所定の第１制御特性を選択し、かつ、前記複数の第２制御特性の中から負荷に応じた所定の第２制御特性を選択し、
選択された前記所定の第１制御特性または前記所定の第２制御特性に基づいて、前記フィードバック制御を実行する、
請求項４に記載の建設車両の作業機の制御装置。
【請求項７】
前記シリンダ長制御部は、前記フィードバック制御の制御量を求めるための第１演算式に含まれる、比例ゲインまたは積分ゲインまたは微分ゲインのうち少なくともいずれか一つまたは複数の値を、前記負荷の値と前記負荷の微分値とに基づいて調整することにより、前記フィードバック制御を実行する、
請求項４に記載の建設車両の作業機の制御装置。
【請求項８】
前記第１割合と前記第２割合とを、負荷に応じて補正するための補正テーブルをさらに備え、
前記シリンダ長制御部は、前記補正テーブルを使用して前記第１割合または前記第２割合を補正することにより、前記オープンループ制御を実行する、
請求項５に記載の建設車両の作業機の制御装置。
【請求項９】
前記第１制御特性は、前記所定の油圧シリンダに作動油を供給するための制御弁への制御信号を最大値から第１所定値まで所定の第１特性線に従って連続的に低下させるように設定されており、
前記第２制御特性は、前記第１領域の前半部分の殆どの部分で前記第１特性線よりも大きい制御信号が得られ、かつ、前記第１領域の後半部分では前記第１特性線よりも小さい制御信号が得られるように設定されている、
請求項２に記載の建設車両の作業機の制御装置。
【請求項１０】
建設車両（１０）の作業機（１４）に使用される所定の油圧シリンダ（３１）のシリンダ長を制御するための制御方法であって、
前記所定の油圧シリンダのシリンダ長を検出し、
前記シリンダ長が、制御の開始を指示する開始指示が入力されてから、目標値（Ｌｓ１）の手前に設定される設定値（Ｌ１）に到達するまでの第１領域では、予め設定される制御特性（１０４）と検出されるシリンダ長とに基づいて前記所定の油圧シリンダに作動油を供給することにより、シリンダ長をフィードバック制御し、
前記シリンダ長が前記設定値から前記目標値に到達するまでの第２領域では、所定の割合で制御信号を減少させながら前記所定の油圧シリンダに作動油を供給することにより、シリンダ長をオープンループ制御する、
建設車両の作業機の制御方法。
【請求項１１】
さらに、前記所定の油圧シリンダに加わる負荷を検出し、
検出される負荷に応じて前記フィードバック制御を実行する、
請求項１０に記載の建設車両の作業機の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、建設車両の作業機の制御装置及び制御方法に関する。
【背景技術】
【０００２】
建設車両の一例としてのホイールローダは、例えば、バケットを地面に対して水平にさせた状態で、土砂等の山にバケットを突入させることにより、堀削する。従って、バケットを水平にさせることが重要となる。そこで、バケットシリンダのシリンダ長を制御することにより、バケット角度を一定範囲にできるようにした技術が提案されている（特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特表２００６−０１３８２１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
従来技術では、バケットシリンダのシリンダ長を制御することにより、ブームを降ろしてバケットを接地させるときのバケットの対地角度を所望の値に維持する。従来技術では、シリンダ長が制御原点に達すると、バケットシリンダに供給する作動油の流量を徐々に低下させていき、シリンダ長を目標値で停止させる。【０００５】
しかし、従来技術では、バケットシリンダに供給する作動油の量をオープンループで制御するため、停止位置の精度が低い。精度を高めるために、シリンダ長が目標値に到達した瞬間にバケットシリンダの作動を停止させると、停止ショックが発生する。さらに、フィードバック制御を用いて位置を制御しようとする場合、目標値付近でハンチング現象が生じる可能性がある。【０００６】
そこで、本発明の目的は、油圧シリンダの停止時のショックを緩和し、かつ、油圧シリンダの停止精度を高めることができるようにした建設車両の作業機の制御装置及び制御方法を提供することにある。本発明の他の目的は、フィードバック制御とオープンループ制御とを使い分けることができ、かつ、油圧シリンダに加わる負荷を考慮して油圧シリンダの位置を制御することができるようにした建設車両の作業機の制御装置及び制御方法を提供することにある。本発明の更なる目的は後述する実施形態の記載から明らかになるであろう。
【課題を解決するための手段】
【０００７】
本発明の第１観点に従う制御装置は、建設車両の作業機に使用される所定の油圧シリンダのシリンダ長を制御するための制御装置であって、所定の油圧シリンダのシリンダ長を検出するシリンダ長検出部と、所定の油圧シリンダのシリンダ長を制御するシリンダ長制御部であって、シリンダ長が、制御の開始を指示する開始指示が入力されてから、目標値の手前に設定される設定値に到達するまでの第１領域では、予め設定される制御特性とシリンダ長検出部により検出されるシリンダ長とに基づいて所定の油圧シリンダに作動油を供給することにより、シリンダ長をフィードバック制御し、シリンダ長が設定値から目標値に到達するまでの第２領域では、所定の割合で制御信号を減少させながら所定の油圧シリンダに作動油を供給することにより、シリンダ長をオープンループ制御する、シリンダ長制御部とを備える。【０００８】
このように構成することにより、目標値に相対的に遠い第１領域では、シリンダ長がフィードバック制御され、目標値に相対的に近い第２領域では、シリンダ長がオープンループ制御される。これにより、シリンダ長を精度良く目標値で停止させることができ、かつ、停止時のショックを緩和することができる。【０００９】
第２観点では、第１観点において、制御特性には、制御開始時のシリンダ長が制御閾値以下の場合に使用される第１制御特性と、制御開始時のシリンダ長が制御閾値を超えている場合に使用される第２制御特性とが含まれており、シリンダ長制御部は、開始指示が入力されたときのシリンダ長が制御閾値以下の場合に第１制御特性に基づいてフィードバック制御を行い、開始指示が入力されたときのシリンダ長が制御閾値を超えている場合に第２制御特性に基づいてフィードバック制御を行う。【００１０】
第３観点では、第２観点において、所定の割合には、第１制御特性に対応する第１割合と、第２制御特性に対応する第２割合とが含まれており、シリンダ長制御部は、第１領域で第１制御特性が使用された場合、第２領域では第１割合を用いて所定の油圧シリンダに供給する作動油をオープンループ制御し、第１領域で第２制御特性が使用された場合、第２領域では第２割合を用いて所定の油圧シリンダに供給する作動油をオープンループ制御する。
【図面の簡単な説明】
【００１１】
【図１】図１は、本実施形態の全体概要を示す説明図である。
【図２】図２は、作業機を拡大して示す側面図である。
【図３】図３は、バケットシリンダの油圧回路である。
【図４】図４は、バケットシリンダ長を求めるためのテーブルを示す。
【図５】図５は、バケットシリンダ長を制御するための制御特性を示す。
【図６】図６は、デテント制御処理のフローチャートである。
【図７】図７は、バケットの姿勢制御処理のフローチャートである。
【図８】図８は、第２実施例に係り、コントローラの構成等を示すブロックである。
【図９】図９は、ブーム角度に応じてバケットシリンダの負荷が変化する様子を示すグラフである。
【図１０】図１０は、バケット姿勢制御処理のフローチャートである。
【図１１】図１１は、バケットシリンダの負荷に応じて補正量を調整するためのテーブルを示す。
【図１２】図１２は、第４実施例に係り、バケット姿勢制御処理を示すフローチャートである。
【発明を実施するための形態】
【００１２】
以下、図面を参照しながら、本発明の実施形態を、建設車両としてのホイールローダに適用した場合を例に挙げて説明する。但し、本実施形態は、ホイールローダ以外の他の建設車両にも適用することができる。
【実施例１】
【００１３】
図１は、本実施形態の概要を示す。ホイールローダ１０は、車体１１と、車体１１の前後左右に取り付けられるホイール１２と、車体１１の後部に設けられる機械室１３と、車体１１の前部に設けられる作業機１４と、車体１１の中央部に設けられる運転室１５と、を備える。運転室１５には、ホイールローダ１０を制御するコントローラ１００と、作業機１４を操作する操作レバー装置１６とが設けられている。【００１４】
作業機１４は、車体１１の前部から前方に延びるようにして回動可能に設けられるブーム２０と、ブーム２０の先端側に回動可能に設けられるバケット３０と、ブーム２０を上下に回動させるブームシリンダ２１と、バケット３０を回動させるためのバケットシリンダ３１と、バケットシリンダ３１とバケット３０とをリンクさせるベルクランク３２とを備える。【００１５】
図２の拡大図にも示すように、ベルクランク３２の中央部３２Ｃは、ブーム２０の中央に回動可能に支持されており、ベルクランク３２の一方の端部３２Ａは、バケットシリンダ３１のシリンダロッド３１Ａ先端に回動可能に取り付けられており、ベルクランク３２の他方の端部３２Ｂは、チルトロッドを介してバケット３０の後部に回動可能に取り付けられている。バケットシリンダ３１の伸縮力は、ベルクランク３２により回転運動に変換されて、バケット３０に伝達される。【００１６】
ブーム２０の一方の取付部２０Ａは車体１１の前部に回動可能に取り付けられ、ブーム２０の他方の取付部２０Ｂはバケット３０の後部に回動可能に取り付けられている。ブーム２０の中央取付部２０Ｃには、ブームシリンダ２１のシリンダロッド２１Ａの先端が回動可能に取り付けられる。【００１７】
図２に示すように、ブーム角度センサ２２は、例えば、ブーム２０の一方の取付部２０Ａに設けられており、ブーム２０の中心線と水平線Ｈとの間のブーム角度θａを検出し、検出信号を出力する。ブーム２０の中心線とは、ブーム２０の一方の取付部２０Ａと他方の取付部２０Ｂとを結ぶ線である。【００１８】
ベルクランク角度センサ３３は、ベルクランク３２の中央部３２Ｃに設けられており、ベルクランク３２の一端３２Ａと中央３２Ｃとを結ぶ線と、ブーム２０の中心線との間のベルクランク角度θｂを検出し、検出信号を出力する。【００１９】
図１に戻ってコントローラ１００の構成を説明する。コントローラ１００は、マイクロプロセッサと、メモリと、入出力回路等を備えるコンピュータシステムとして構成することができる。コントローラ１００は、例えば、バケットシリンダ長検出部１０１と、バケットシリンダ長テーブル１０２と、バケット姿勢制御部１０３と、シリンダ長制御用テーブル１０４とを備える。【００２０】
「シリンダ長検出部」としてのバケットシリンダ長検出部１０１は、例えば、ブーム角度θａ及びベルクランク角度θｂに基づいてバケットシリンダ長テーブル１０２を参照することにより、現在のバケットシリンダ長Ｌｃを算出する。バケットシリンダ長テーブル１０２の構成は、図４で後述する。なお、バケットシリンダ長検出部１０１は、ブーム角度θａ及びベルクランク角度θｂを用いる方法以外の他の方法で、バケットシリンダ長を検出することもできる。例えば、バケットシリンダ長を直接的に測定するためのセンサを設ける構成でもよい。【００２１】
「シリンダ長制御部」としてのバケット姿勢制御部１０３は、検出されたシリンダ長に基づいてシリンダ長制御用テーブル１０４を参照し、方向制御弁２０２に制御信号を出力する。バケット姿勢制御部１０３には、設定ボタン１６Ａと、バケットレバー１６Ｂとが接続される。さらに、バケット姿勢制御部１０３には、油圧ポンプ２０１の吐出量（ポンプ油量２０１Ａ）も入力される。さらに、バケット姿勢制御部１０３は、デテント機構１６Ｃに制御信号を出力できるように構成される。【００２２】
図３は、油圧制御回路２００を示す回路図である。図３では、バケットシリンダ３１に関する回路を中心に示す。実際には、ブームシリンダ２１を作動させるための回路も油圧制御回路２００に含まれる。【００２３】
油圧制御回路２００は、例えば、斜板型油圧ポンプ２０１と、方向制御弁２０２と、リリーフ弁２０３とを備える。なお、油圧ポンプ２０１の吐出圧は、圧力センサ２０４により検出されてコントローラ１００に伝達される。【００２４】
方向制御弁２０２は、例えば、２ポート３位置の切替弁として構成される。方向制御弁２０２は、図３において方向制御弁２０２の左右に位置するソレノイドに与えられる制御信号（電流値）に応じて、切替位置及び開口面積が制御される。方向制御弁２０２が位置（ａ）に切り替わると、油圧ポンプ２０１から吐出された作動油は、図３中右側に位置する、バケットシリンダ３１のトップ側の油室に供給される。これにより、シリンダロッド３１Ａは縮退し、バケット３０にダンプ方向の力が作用する。方向制御弁２０２が位置（ｃ）に切り替わると、油圧ポンプ２０１からの作動油は、図３中左側に位置する、バケットシリンダ３１のボトム側の油室に供給される。これにより、シリンダロッド３１Ａは伸長し、バケット３０にチルト方向の力が作用する。方向制御弁２０２が位置（ｂ）にある場合、バケットシリンダ３１に作動油は供給されず、かつ、バケットシリンダ３１から作動油は流出しない。従って、シリンダロッド３１Ａは現在の位置を保持する。【００２５】
操作レバー装置１６は運転室１５に設けられ、オペレータにより操作される。バケット３０の回動を制御するためのバケットレバー１６Ｂをオペレータが操作すると、その操作信号がコントローラ１００に伝達される。コントローラ１００は、操作レバー装置１６からの操作信号に応じて、方向制御弁２０２の切替位置及び開口面積を制御することにより、バケットシリンダ３１に供給する作動油の量を調整する。なお、後述のように、所定のデテント条件が成立すると、操作レバー装置１６内のデテント機構１６Ｃが作動して、操作レバー１６Ｂの操作位置を固定する。【００２６】
さらに、操作レバー装置１６には、バケットシリンダ３１のシリンダ長の目標値を設定するための設定ボタン１６Ａが設けられている。オペレータは、設定ボタン１６Ａを操作することにより、接地時のバケット３０の水平面に対する角度を、例えば、−５度から＋５度までの間で任意の値に設定させることができる。そして、オペレータは、設定ボタン１６Ａを押すことにより、バケット３０の停止位置を記憶させることができる。【００２７】
図４を参照して、「シリンダ長検出用テーブル」としてのバケットシリンダ長テーブル１０２の例を説明する。バケットシリンダ長テーブル１０２は、バケットシリンダ３１のシリンダ長Ｌｃを求めるために使用されるテーブルである。バケットシリンダ長テーブル１０２には、例えば、複数の基準ブーム角度と複数の基準ベルクランク角度とのそれぞれの組合せにおける、シリンダ長が予め登録されている。【００２８】
基準ブーム角度とは、設計的に決められるブーム角度センサ２２の、出力値が表す所定の角度範囲内で予め複数設定されている、ブーム角度である。例えば、ブーム２０がボトム位置（ブームシリンダ２１が機械的に最も縮められた状態）にある場合のブーム角度（下限角度、例えば−５０度）から、ブーム２０がトップ位置（ブームシリンダ２１が機械的に最も伸びた状態）にある場合のブーム角度（上限角度、例えば５０度）までの範囲内に、５度刻みで基準ブーム角度が設定される。【００２９】
基準ベルクランク角度とは、設計的に決められるベルクランク角度センサ３３の、出力値が表す他の下限角度（例えば０度）から他の上限角度（例えば６５度）までの範囲内で予め複数設定されている、ベルクランク角度である。基準ベルクランク角度は、下限値から中間値（例えば２５度）に至るまでの範囲では、例えば５度刻みで設定され、中間値から上限値に向かう領域では、例えば３度刻みで設定される。なお、上限値付近では、４度または５度刻みで基準ベルクランク角度が設定される。つまり、バケット３０が水平付近に位置する領域では、より細かく基準ベルクランク角度が設定されている。【００３０】
各基準ブーム角度と各基準ベルクランク角度の組合せに対応して、バケットシリンダ長Ｌｃが予め設定されている。従って、ブーム角度θａとベルクランク角度θｂとが判明すれば、補間演算を行うことにより、バケットシリンダ長テーブル１０２からバケットシリンダ長Ｌｃを算出することができる。【００３１】
本実施例のホイールローダ１０は、製造誤差及びセンサ誤差等の一切無い理想的な状態において、ブーム角度θａが−４０度、かつ、ベルクランク角度θｂが４６度の場合に、バケット３０が水平に接地し、そのときのバケットシリンダ長Ｌｃは２０５６ｍｍ（＝図４中のＬ６２）になるものとしている。本実施例の基準シリンダ長は、２０５６ｍｍである。【００３２】
なお、理想的な状態の場合の、ブーム角度θａとベルクランク角度θｂとバケットシリンダ長Ｌｃとの関係の一部をバケットシリンダ長テーブル１０２から抜き出すと、次の通りである。理想的な状態とは、ブーム角度センサ２２及びベルクランク角度センサ３３が設計仕様の通りに信号を出力しており、かつ、作業機１４等に製造誤差及び組立誤差等が生じていない場合を意味する。なお、以下では、（ブーム角度θａ，ベルクランク角度θｂ，バケットシリンダ長Ｌｃ）の形式で表現する。【００３３】
（−２０度，４０度，２００２ｍｍ）、（−２０度，４３度，２０５７ｍｍ）、（０度，３４度，２００７ｍｍ）、（０度，３７度，２０６２ｍｍ）、（２０度，２８度，２０５１ｍｍ）、（２０度，３１度，２１０６ｍｍ）、（４５度，１５度，２０３４ｍｍ）、（４５度，２０度，２１１９ｍｍ）。【００３４】
ブーム２０が回動可能な範囲（−５０度から５０度まで）のうち、所定の範囲（−４０度から４５度近辺）においては、バケット３０を接地させたときにバケット３０が水平になるバケットシリンダ長Ｌｃを得ることができる。【００３５】
図５は、バケットシリンダ長Ｌｃを目標値Ｌｓ１にするための制御特性を示す説明図である。横軸はバケットシリンダ３１のシリンダ長を示し、縦軸はバケットシリンダ３１をチルト側に操作するために方向制御弁２０２に出力される制御信号の割合を示す。図５（ａ）は第１制御特性１０４Ａを、図５（ｂ）は第２制御特性１０４Ｂを、示す。後述する図７等の図面では、第１制御特性１０４Ａを第１テーブルと、第２制御特性１０４Ｂを第２テーブルと示す。なお、以下の説明及び図面では、方向制御弁２０２の有する比例ソレノイドに入力される電流値を、制御信号と表現する。【００３６】
目標値Ｌｓ１のΔＬ１手前に、設定値Ｌ１が設定される。設定値Ｌ１は、フィードバック制御における目標値である。従って、例えば、Ｌｓ１を「最終目標値」、Ｌ１を「フィードバック制御用目標値」または「中間目標値」と呼び変えることもできる。【００３７】
設定値Ｌ１のΔＬ２手前には、制御閾値Ｌ２が設けられている。制御閾値Ｌ２は、図５（ａ）に示す第１制御特性１０４Ａと、図５（ｂ）に示す第２制御特性１０４Ｂとのいずれを選択するかを判定するために使用される。【００３８】
制御用閾値Ｌ２からΔＬ３だけ先の位置に、デテント解除点Ｐ１が設定される。デテント解除点Ｐ１とは、バケットレバー１６Ｂの備えるデテント機構１６Ｃの電磁石による固定を解除する位置である。フィードバック制御の開始後に、バケットレバー１６Ｂのデテントを解除させることにより、急激な変化が生じるのを防止する。つまり、フィードバック制御の開始前にデテントが解除されると、バケットレバー１６Ｂが中立位置に戻されて、方向制御弁２０２が位置（ｂ）に切り替わる。これにより、バケットシリンダ３１の動作が急停止してしまう。この急停止を防止するために、フィードバック制御の開始後に、デテントを解除させている。さらに言えば、ΔＬ３の値は、任意でよい。極端に言えば、フィードバック制御ルーチンから抜け出ると同時に、デテントが解除される構成でもよい。【００３９】
一例として、具体的な数値を挙げると、目標値Ｌｓ１は２０５６ｍｍ、設定値Ｌ１は２０５０ｍｍ、制御閾値Ｌ２は１９７０ｍｍ、ΔＬ１は６ｍｍ、ΔＬ２は８０ｍｍに設定することができる。なお、Ｐ１はＬ２よりも数ｍｍ程度僅かに長く設定する。【００４０】
オペレータがバケットレバー１６Ｂを所定量Ｔｈ１以上操作すると、バケット姿勢制御が開始される。バケットレバー１６Ｂが所定量Ｔｈ１以上操作されることは、「開始指示の入力」に該当する。本実施例の制御が開始される前は、オペレータによるバケットレバー１６Ｂの操作に応じて、バケットシリンダ３１のシリンダ長が制御される。なお、後述のように、バケットレバー１６Ｂを所定量Ｔｈ１以上操作することは、デテント開始の指示にもなっている。【００４１】
本実施例では、バケットシリンダ長に応じて、複数の制御方法を切り替える。一つの制御方法はフィードバック制御であり、他の一つの制御方法はオープンループ制御である。シリンダ長が制御閾値Ｌ２から設定値Ｌ１に到達するまでの第１領域では、フィードバック制御が行われる。シリンダ長が設定値Ｌ１から目標値Ｌｓ１に到達するまでの第２領域では、オープンループ制御が行われる。【００４２】
第１領域では、検出されるバケットシリンダ長に応じて方向制御弁２０２に出力される制御信号の大きさを制御する。つまり、実線で示す特性に従って方向制御弁２０２のバルブ開口面積が減少するように、方向制御弁２０２への制御信号を制御する。具体的には、図５の第１領域の実線で示す特性がシリンダ長制御用テーブル１０４に保存されており、その特性に従った制御信号が方向制御弁２０２に向けて出力される。バケットシリンダ長が設定値Ｌ１に達したときの制御信号の大きさはＶ１である。【００４３】
第２領域では、設定値Ｌ１に到達したときの制御信号をＶ１から０％まで一定の割合で低下させていくことにより、バケットシリンダ長を設定値Ｌ１から目標値Ｌｓ１に変化させる。バケットシリンダ長が目標値Ｌｓ１に到達したときに、制御信号は０％となるように、減少割合が予め設定される。制御信号を一定割合で減少させるタイミングは、コントローラ１００内のクロック（不図示）からの信号に基づいて決定される。これにより、一定時間が経過すると、制御信号は０％となる。【００４４】
図５（ａ）に示す第１制御特性１０４Ａと、図５（ｂ）に示す第２制御特性１０４Ｂとの相違を説明する。先に、第１制御特性１０４Ａを説明する。制御開始時のバケットシリンダ長Ｌｃが制御閾値Ｌ２未満である場合（Ｌｃ＜Ｌ２）、第１制御特性１０４Ａが選択される。制御開始時のバケットシリンダ長が短く、フィードバック制御の目標値である設定値Ｌ１までの距離が長いため、制御信号を最大値の１００％からＶ１まで比較的緩やかに低下させる。【００４５】
第２制御特性１０４Ｂを説明する。制御開始時のバケットシリンダ長Ｌｃが制御閾値Ｌ２以上の場合（Ｌｃ≧Ｌ２）、第２制御特性１０４Ｂが選択される。第２制御特性１０４Ｂは、第１制御特性１０４Ａに比べて、その前半部分（図５（ｂ）において、Ｌ４未満の範囲）の制御信号が大きく、その後半部分（Ｌ４からＬｓ１までの範囲）の制御信号が小さくなるように、設定されている。第２制御特性１０４Ｂでは、制御信号を、１００％よりも小さい値であるＶ３を所定期間維持した後で、Ｖ２（＜Ｖ１）まで低下させる。制御信号をＶ３からＶ２まで低下させる勾配は、第１制御特性１０４Ａにて制御信号を１００％からＶ１まで低下させる勾配よりも大きい。【００４６】
図５（ｂ）に示すように、第２制御特性１０４Ｂでは、フィードバック制御の前半部分において、バケットシリンダ長の移動速度（伸長速度）が第１制御特性１０４Ａの移動速度よりも早くなるように設定されている。これにより、制御開始時に、スピード感をもってバケットシリンダ長を変化させることができ、操作感を向上できる。つまり、操作感を向上させるために、本実施例では、バケットシリンダ長ＬｃがＬ４未満の範囲において、第２制御特性１０４Ｂが第１制御特性１０４Ａの右上に出っ張るような形状に設定するのが望ましい。一方、フィードバック制御の後半部分においては、第１制御特性１０４Ａよりも制御信号を低下させることにより、バケットシリンダ長の移動速度を減速し、設定値Ｌ１に到達させる。【００４７】
図６は、デテント制御処理のフローチャートである。バケットレバー１６Ｂが所定量Ｔｈ１（例えば、Ｔｈ１＝９０％）以上操作されると、コントローラ１００からの信号により、バケットレバー１６Ｂがデテント機構１６Ｃに設けられている電磁石により固定される。バケットレバー１６Ｂが一時的に固定されることをデテントと呼ぶ。【００４８】
コントローラ１００は、現在のバケットシリンダ長Ｌｃがデテント解除位置Ｐ１の手前（Ｌｃ＜Ｐ１）であるか否かを判定する（Ｓ１０）。上述の通り、デテント解除位置Ｐ１は、制御閾値Ｌ２よりも若干大きく設定される。【００４９】
バケットシリンダ長Ｌｃがデテント解除位置Ｐ１に到達していない場合（Ｓ１０：ＹＥＳ）、コントローラ１００は、バケットレバー１６Ｂの操作量が閾値Ｔｈ１以上であるか否かを判定する（Ｓ１１）。【００５０】
バケットレバー１６Ｂの操作量が閾値Ｔｈ１以上の場合（Ｓ１１：ＹＥＳ）、コントローラ１００は、デテント機構１６Ｃの電磁石に通電してバケットレバー１６Ｂを固定する（Ｓ１２）。これに対し、バケットシリンダ長Ｌｃがデテント解除位置Ｐ１よりも大きい場合（Ｓ１０：ＮＯ）、または、バケットレバー１６Ｂの操作量が閾値Ｔｈ１未満の場合（Ｓ１１：ＮＯ）のいずれかの場合には、デテントは行われない（Ｓ１３）。Ｓ１０またはＳ１１のいずれかでＮＯと判定された場合、既に行われていたデテントも解除される（Ｓ１３）。【００５１】
即ち、バケットシリンダ長がＰ１よりも短く、かつ、バケットレバー１６ＢがＴｈ１以上操作された場合にのみ、バケットレバー１６Ｂが固定される。従って、図５（ａ）に示す第１制御特性１０４Ａが選択される場合は、デテント制御がオンになる。制御開始時のバケットシリンダ長がＰ１よりも小さいためである。これに対し、図５（ｂ）に示す第２制御特性１０４Ｂが選択される場合は、デテント制御はオフになる。制御開始時のバケットシリンダ長がＰ１よりも大きいためである。【００５２】
図７は、バケット姿勢を制御する処理を示すフローチャートである。コントローラ１００は、バケットレバー１６Ｂの操作量ＬＯが閾値Ｔｈ１以上であるか否かを判定する（Ｓ２０）。閾値Ｔｈ１は、例えば９０％程度に設定される。但し、その値に限定されない。バケットレバー１６Ｂの操作量ＬＯが閾値Ｔｈ１未満の場合（Ｓ２０：ＮＯ）、コントローラ１００は、バケットレベリングの自動制御を終了し、バケットレバー１６Ｂの操作量に応じたマニュアル操作に移行する。バケットレバー１６Ｂの操作量ＬＯが閾値Ｔｈ１以上の場合（Ｓ２０：ＹＥＳ）、コントローラ１００は、現在のバケットシリンダ長Ｌｃが目標値Ｌｓ１未満であるか否かを判定する（Ｓ２１）。現在のバケットシリンダ長Ｌｃが目標値Ｌｓ１以上の場合（Ｓ２１：ＮＯ）、前記同様に、バケットレベリングの自動制御は行わず、マニュアル操作に移行する。バケットレバー１６Ｂの操作量ＬＯが目標値Ｌｓ１未満である場合（Ｓ２１：ＹＥＳ）、コントローラ１００は、現在のバケットシリンダ長Ｌｃが制御閾値Ｌ２未満であるかを判定する（Ｓ２２）。【００５３】
バケットシリンダ長Ｌｃが制御閾値Ｌ２未満の場合（Ｓ２２：ＹＥＳ）、コントローラ１００は、制御出力を１００％に設定する（Ｓ２３）。Ｓ２２でＹＥＳと判定された場合は、図６に示すデテント処理により、バケットレバー１６Ｂの位置が電磁石により固定される。従って、制御信号は１００％となる。これにより、バケットシリンダ３１のボトム側に作動油が供給されて、シリンダロッド３１Ａが伸長し、バケットシリンダ長Ｌｃが増大する。【００５４】
次に、コントローラ１００は、バケットシリンダ長ＬｃがＬ２に到達したか否かを判定する（Ｓ２４）。バケットシリンダ長Ｌｃが制御閾値Ｌ２に到達すると（Ｓ２４：ＹＥＳ）、コントローラ１００は、第１制御特性１０４Ａ（第１テーブル）に従って、フィードバック制御を開始する（Ｓ２５）。これにより、伸長速度を減少させつつ、バケットシリンダ長Ｌｃは徐々に増大し、設定値Ｌ１に近づいていく。【００５５】
コントローラ１００は、デテントがオフされたか否かを判定する（Ｓ２６）。例えば、図６に示す処理において、デテントのオンオフ状態を管理するためのフラグを設定する構成とすれば、そのフラグを参照してデテントがオフ状態であるか否かを判定できる。デテントがオフされた場合（Ｓ２６：ＹＥＳ）、コントローラ１００は、バケットレバー１６Ｂの操作量ＬＯが閾値Ｔｈ２以下であるか否かを判定する（Ｓ２７）。閾値Ｔｈ２は、バケットレバー１６Ｂがニュートラル位置であるか否かを判定するための中立判定用閾値である。閾値Ｔｈ２は、例えば、制御出力５％程度に設定される。バケットレバー１６Ｂの操作量ＬＯが閾値Ｔｈ２以下の場合（Ｓ２７：ＹＥＳ）、バケットレバー１６Ｂはニュートラル位置にあると判定される。【００５６】
そこで、コントローラ１００は、バケットシリンダ長Ｌｃが設定値Ｌ１に到達したか否かを判定する（Ｓ２８）。バケットシリンダ長Ｌｃが設定値Ｌ１に達すると（Ｓ２８：ＹＥＳ）、コントローラ１００は、フィードバック制御を終了し、オープンループ制御に移行する（Ｓ２９）。コントローラ１００は、予め設定される第１割合で、制御信号を低下させることにより、バケットシリンダ長Ｌｃを目標値Ｌｓ１に向けて伸長させる（Ｓ２９）。制御信号が０％になった時点でＳ２９は終了し、さらに本処理も終了する。バケットシリンダ長Ｌｃが設定値Ｌ１に達するまで、Ｓ２５のフィードバック制御が継続される（Ｓ２８：ＮＯ、Ｓ２５）。【００５７】
一方、バケットレバー１６Ｂの操作量ＬＯが閾値Ｔｈ２を越えている場合（Ｓ２７：ＮＯ）、バケットレバー１６Ｂはニュートラル位置ではないと判定される。コントローラ１００は、デテントがオフ状態になってからの経過時間が所定時間ＰＴになるまで、待機する（Ｓ３０）。所定時間ＰＴは、例えば、１００ｍｓ程度の値に設定される。但し、その値に限定されない。デテントがオフ状態になってから所定時間ＰＴが経過してもなおレバー操作量ＬＯが中立判定用閾値Ｌ２を上回っている場合（Ｓ３０：ＹＥＳ）、本処理は終了し、マニュアル操作に移行する。【００５８】
Ｓ３０を設ける理由を説明する。図６の処理により、バケットシリンダ長がＰ１に達すると、デテントが解除される（Ｓ１０でＮＯ、Ｓ１３）。デテント解除後は、制御特性１０４Ａまたは１０４Ｂのいずれかに従って、フィードバック制御が実行される。【００５９】
しかし、デテントが解除された後に、オペレータが自らの意思で、バケットレバー１６Ｂをニュートラル位置以上の位置で操作し続ける場合も考えられる。この場合に、第１制御特性１０４Ａに基づいてバケットシリンダ長を変化させたのでは、バケットレバー１６Ｂの実際の位置に比べてバケットシリンダ長の変位速度が遅くなるため、減速感や違和感をオペレータに与えることになる。そこで、デテントが解除された場合に、バケットレバー１６Ｂの操作量が閾値Ｔｈ２以上である状態が所定時間ＰＴ以上継続した場合は、コントローラ１００は、オペレータの意思によってバケットレバー１６Ｂが操作されていると判断し、バケットレバー１６Ｂの操作に応じて方向制御弁２０２を制御する。【００６０】
Ｓ２２においてＮＯと判定された場合、コントローラ１００は、コントローラ１００は、第２制御特性１０４Ｂ（第２テーブル）に従って、バケットシリンダ長Ｌｃが設定値Ｌ１になるまで、フィードバック制御する（Ｓ３１）。コントローラ１００は、バケットレバー１６Ｂの操作量ＬＯが閾値Ｔｈ２以下であるか否かを判定する（Ｓ３２）。バケットレバー１６Ｂの操作量ＬＯが閾値Ｔｈ２以下の場合（Ｓ３２：ＹＥＳ）、バケットシリンダ長Ｌｃが設定値Ｌ１に達したか否かを判定する（Ｓ３３）。バケットシリンダ長Ｌｃが設定値Ｌ１に達するまで、フィードバック制御が行われる（Ｓ３３：ＮＯ、Ｓ３１）。バケットシリンダ長Ｌｃが設定値Ｌ１に達すると
（Ｓ３３：ＹＥＳ）、コントローラ１００は、第２制御特性１０４Ｂに対応付けられている第２割合で制御信号を低下させることにより、バケットシリンダ長Ｌｃを目標値Ｌｓ１に向けて伸長させる（Ｓ３４）。制御信号が０％になった時点でＳ３４は終了し、本処理も終了する。【００６１】
一方、バケットレバー１６Ｂの操作量ＬＯが閾値Ｔｈ２を越えている場合（Ｓ３２：ＮＯ）、コントローラ１００は、所定時間ＰＴが経過したか否かを判定する（Ｓ３５）。コントローラ１００は、所定時間ＰＴが経過するまで、フィードバック制御を実行する（Ｓ３５：ＮＯ、Ｓ３１）。所定時間ＰＴが経過してもなおバケットレバー１６Ｂの操作量ＬＯが閾値Ｔｈ２を上回っている場合（Ｓ３５：ＹＥＳ）、Ｓ３１のフィードバック制御を終了し、マニュアル操作に移行する。【００６２】
なお、デテント解除点Ｐ１を制御閾値Ｌ２の近くに設定する場合（ΔＬ３＜数ミリ）、Ｓ３０の所定時間ＰＴは、バケットシリンダ長Ｌｃが制御閾値Ｌ２を通過してからの経過時間であって、かつ、デテントが解除されるのに十分な時間（例えば、１５０ｍｓ程度）として設定してもよい。この場合、Ｓ２６の判定ステップは省略できる。上述の通り、所定時間ＰＴの計測を開始するタイミングは複数あってもよいし、所定時間ＰＴの値は複数設定されてもよい。状況に応じていずれか一つのタイミング及び値が使用される。【００６３】
このように構成される本実施例によれば、バケットシリンダ３１のシリンダ長が設定値Ｌ１に到達するまではフィードバック制御を行い、シリンダ長が設定値Ｌ１に到達した後はオープンループ制御を行って、シリンダ長を目標値Ｌｓ１にさせる。従って、本実施例では、ハンチングを発生させずに、かつ、高速に、バケットシリンダ３１のシリンダ長を設定値にさせることができる。これにより、本実施例では、バケットシリンダ３１の停止精度を高くすることができ、バケット３０の対地角度を高精度に制御できる。【００６４】
さらに、本実施例では、バケットシリンダ長が十分に目標値Ｌｓ１に近づくまではフィードバック制御を行い、バケットシリンダ長が目標値Ｌｓ１に近づいた場合（Ｌｃ≧Ｌ１）、フィードバック制御を停止し、一定の割合でバケットシリンダ長を変化させる。従って、フィードバック制御によるハンチングの発生を抑制し、かつ、停止精度を高めることができる。【００６５】
さらに、本実施例では、バケットシリンダ長がＬ１に達した後は、一定の割合でバケットシリンダ長を伸長させるため、停止時のショックを緩和することができ、操作性を改善することができる。【００６６】
さらに、本実施例では、制御開始時のバケットシリンダ長に応じて、第１制御特性１０４Ａと第２制御特性１０４Ｂとのいずれか一方を選択し、選択された制御特性に基づいてフィードバック制御を行う。従って、操作性を改善することができる。特に、バケットシリンダ長が比較的目標値に近い状態において制御が開始される場合であっても、バケットシリンダ長の変位速度を比較的早くすることができ、オペレータの操作性を高めることができる。
【実施例２】
【００６７】
図８−図１１を参照して第２実施例を説明する。本実施例を含む以下の各実施例は、第１実施例の変形例に相当する。従って、第１実施例との相違点を中心に説明する。本実施例では、バケットシリンダ３１に加わる負荷に応じて、制御特性を選択する。【００６８】
図８は、コントローラ１００Ａのブロック図である。本実施例のコントローラ１００Ａは、前記コントローラ１００と同様に、バケットシリンダ長検出部１０１と、シリンダ長検出用テーブル１０２と、バケット姿勢制御部１０３と、シリンダ長制御用テーブル１０４とを備える。【００６９】
さらに、本実施例のコントローラ１００Ａは、バケットシリンダ３１の負荷を検出するためのバケットシリンダ負荷検出部１０５を備える。バケットシリンダ３１の負荷を検出する方法は、図９及び図１０で後述する。【００７０】
また、本実施例のシリンダ長制御用テーブル１０４は、バケットシリンダ３１の複数の負荷段階に応じて、第１制御特性１０４Ａ（第１テーブル）及び第２制御特性１０４Ｂ（第２テーブル）をそれぞれ備えている。【００７１】
例えば、高負荷１０４Ｈ、中負荷１０４Ｍ、低負荷１０４Ｌの３段階で負荷を区別する場合、各負荷段階「高負荷１０４Ｈ」、「中負荷１０４Ｍ」及び「低負荷１０４Ｌ」のそれぞれに、第１制御特性１０４Ａと第２制御特性１０４Ｂとが用意される。高負荷１０４Ｈの場合に使用される第１制御特性１０４Ａには符号１０４ＨＡが与えられ、第２制御特性１０４Ｂには符号１０４ＨＢが与えられる。同様に、中負荷１０４Ｍの場合に使用される第１制御特性１０４Ａには符号１０４ＭＡが与えられ、第２制御特性１０４Ｂには符号１０４ＭＢが与えられる。同様に、低負荷１０４Ｌの場合に使用される第１制御特性１０４Ａには符号１０４ＬＡが与えられ、第２制御特性１０４Ｂには符号１０４ＬＢが与えられる。【００７２】
ここで、例えば、中負荷の第１制御特性１０４ＭＡ及び第２制御特性１０４ＭＢが図５に示す特性である場合、高負荷の第１制御特性１０４ＨＡ及び第２制御特性１０４ＨＢは、中負荷の場合よりも制御信号が大きくなるように設定され、低負荷の第１制御特性１０４ＬＡ及び第２制御特性１０４ＬＢは、中負荷の場合よりも制御信号が小さくなるように設定される。【００７３】
バケットシリンダ３１に加わる負荷を検出する方法の例を幾つか説明する。図９は、作業機の姿勢とバケットシリンダ３１の負荷との関係を示すグラフである。縦軸はバケットシリンダ３１の負荷を示し、横軸はバケットシリンダ長を示す。【００７４】
図９は、ブーム２０が水平の状態と、ブーム２０が３０度上がった状態と、ブーム２０がトップ位置まで上がった状態との３つの状態のそれぞれについて、バケットシリンダ長とバケットシリンダ負荷との関係が示されている。【００７５】
図９に示すように、バケットシリンダ長がある値のときに、バケットシリンダ３１に加わる負荷は大きくなり、バケットシリンダ長が長くなるほどバケットシリンダ負荷は減少する。しかし、バケットシリンダ長による負荷変化よりも、ブーム角度による負荷変化の方が大きいことがわかる。つまり、ブーム角度が大きくなるほど、バケットシリンダ３１に加わる負荷が増大する。従って、バケットシリンダ負荷検出部１０５は、制御開始時のブーム角度に基づいてバケットシリンダ３１の負荷を検出または算出することができる。【００７６】
ここで、バケットシリンダ負荷は、バケットシリンダ３１のシリンダ圧力及びポンプ２０１の吐出圧にそれぞれ比例する。従って、バケットシリンダ負荷検出部１０５は、バケットシリンダ３１のシリンダ圧または油圧ポンプ２０１の吐出圧のいずれか一方または両方に基づいて、バケットシリンダ３１の負荷を検出することができる。【００７７】
さらには、バケットシリンダ負荷検出部１０５は、作業機１４の姿勢と、バケットシリンダ３１のシリンダ圧と、油圧ポンプ２０１の吐出圧とに基づいて、バケットシリンダ負荷を検出することもできる。【００７８】
図１０は、本実施例によるバケット姿勢制御処理のフローチャートである。コントローラ１００Ａは、バケットシリンダ３１の負荷を検出し（Ｓ４０）、検出された負荷に応じたテーブルセット（第１制御特性と第２制御特性のセット）を選択する（Ｓ４１）。【００７９】
以下、図７で述べたと同様に、負荷に応じて選択されたテーブルセットに従って、バケットシリンダ長が設定値Ｌ１になるまでフィードバック制御を行う。バケットシリンダ長が設定値Ｌ１に到達した後は、所定の割合（第１割合または第２割合）に従って、バケットシリンダ長を目標値Ｌｓ１まで伸長させる。【００８０】
このように構成される本実施例も第１実施例と同様の効果を奏する。さらに、本実施例では、バケットシリンダ３１の負荷に応じて、フィードバック制御に使用する制御特性のセットを切り替えるため、第１実施例よりも停止精度を高めることができる。
【実施例３】
【００８１】
図１１を参照して第３実施例を説明する。第３実施例では、フィードバック制御の制御量をバケットシリンダ３１の負荷に応じて調節するだけでなく、オープンループ制御で使用する「所定割合」もバケットシリンダ３１の負荷に応じて補正する。【００８２】
本実施例では、図１０中のＳ２８とＳ２９との間で、Ｓ４０で検出されたバケットシリンダ負荷に基づいて、第１割合を補正する。同様に、図１０中のＳ３３とＳ３４との間で、Ｓ４０で検出されたバケットシリンダ負荷に基づいて、第２割合を補正する。コントローラ１００Ａは、補正された第１割合または第２割合を用いて、バケットシリンダ長を目標値Ｌｓ１まで伸長させる（Ｓ２９，Ｓ３４）。【００８３】
図１１は、オープンループ制御時の制御量（第１割合、第２割合）を、バケットシリンダ負荷に応じて補正するためのテーブルの特性を示す。縦軸は１処理サイクル前の制御量からの差分量（減少量）を示し、横軸は油圧ポンプ２０１の吐出量を示す。１処理サイクルとは、制御信号を制御するサイクルを意味し、例えば、１０ｍｓｅｃ程度の値に設定される。【００８４】
図１１に示すように、バケットシリンダ３１の負荷が高くなるほど前回の制御量から差し引く量は小さくなり、バケットシリンダ３１の負荷が低くなるほど前回の制御量から差し引く量は大きくなる。【００８５】
高負荷の場合は、制御量を大きく減少させると、予定された位置よりも手前で停止する可能性があるため、前回からの減少量を小さくする。これに対し、低負荷の場合は、制御量の減少量を小さくすると、予定の位置を行き過ぎる可能性があるため、前回からの減少量を大きくする。【００８６】
このように構成される本実施例も第１実施例及び第２実施例と同様の効果を奏する。さらに、本実施例では、オープンループ制御時の制御量をバケットシリンダ負荷に応じて補正するため、停止精度をより一層高くすることができる。
【実施例４】
【００８７】
図１２を参照して第４実施例を説明する。本実施例では、負荷状態に応じたテーブルセット（１０４ＨＡ、１０４ＨＢ、１０４ＭＡ、１０４ＭＢ、１０４ＬＡ、１０４ＬＢ）に代えて、下記の式１に示す所定の演算式を用いる（Ｓ５０，Ｓ５１）。【００８８】
y=a(m,m')(xa-x)+b(m,m')・d/dt・(xa-x)+c(m,m')∫(xa-x)dt・・・（式１）【００８９】
上記式１において、ｙは制御量、ｘはバケットシリンダ長、ｘａは停止目標、ｍはバケットシリンダ負荷、ｍ’はバケットシリンダ負荷ｍの時間微分値である。ａ（ｍ，ｍ’）は比例ゲインを、ｂ（ｍ，ｍ’）は微分ゲインを、ｃ（ｍ，ｍ’）は積分ゲインを、それぞれ示す。【００９０】
本実施例では、上記式１に基づいてバケットシリンダ長をフィードバック制御する（Ｓ５０，Ｓ５１）。式１では、バケットシリンダ３１の負荷（ｍ）及び負荷の変動量（ｍ’）に応じて、比例ゲイン、微分ゲイン及び積分ゲインを調整する。なお、比例制御と微分制御と積分制御とを同時に行う必要は必ずしもなく、例えば、比例制御と微分制御だけ行う構成（ＰＤ制御）、または、比例制御と積分制御だけを行う構成（ＰＩ制御）としてもよい。上記式１に基づくＰＤ制御に具体的な数値を入れた場合を、数１に示す。【００９１】
【数１】
2011114974.tif 000003
【００９２】
数１中のＸaimは、式１中のｘａに該当し、数１中のｍドットは、式１中のｍ’に該当する。数１において、制御量（制御信号）は、１００％から０％の範囲で変化するものとする。また、制御開始時の位置ｘは100であり、制御開始時よりも手前では制御信号は１００％になっているものとする。【００９３】
さらに、「35000」とは、ブーム２０が水平のときのバケットシリンダ負荷（基準負荷）である。従って、現在のバケットシリンダ負荷が大きくなるほど、（35000／ｍ）の値が小さくなり、比例ゲインの分母が小さくなって制御出力が増大する。（ｍ’／１０−６）は、バケットシリンダ負荷の変動に応じてゲインを調整するためのものである。ブーム２０が下降すると、バケットシリンダ負荷が減少するため、（ｍ’／１０−６）はマイナスの値となる。その結果、比例ゲインの分母が大きくなって、制御量を減少させる方向に作用する。【００９４】
このように構成される本実施例も第１実施例及び第２実施例と同様の効果を奏する。さらに、本実施例では、演算式に基づいてフィードバック制御の制御量を算出するため、テーブルセットを用意する必要がない。従って、コントローラ内のメモリを節約することができる。【００９５】
なお、上述した本発明の実施形態は、本発明の説明のための例示であり、本発明の範囲をそれらの実施形態にのみ限定する趣旨ではない。本発明は、その要旨を逸脱することなく、その他の様々な態様でも実施することができる。【００９６】
第２実施例の変形例を説明する。本変形例では、図１０中のＳ２９において、下記式２に示す他の所定の演算式に従ってバケットシリンダ長をオープンループ制御する。同様に、図１０中のＳ３４でも、式２に示す他の所定の演算式に従ってバケットシリンダ長をオープンループ制御する。【００９７】
y=d(m,m',Q,x0,y0)・・・（式２）【００９８】
上記式２において、Ｑはバケットシリンダ３１に流入する作動油の量（または、バケットシリンダ３１に供給される作動油の推定流量）、ｘ０はオープンループ制御開始時のバケットシリンダ３１のシリンダ長（つまり、図５のＬ１）、ｙ０はオープンループ制御開始時の制御量（つまり、図５のＶ１またはＶ２）である。【００９９】
式２をより具体化した式を式３として示す。例えば、オープンループ制御開始時の制御量ｙ０が４５％であり、かつ、バケットシリンダ３１に供給される作動油の流量が５０００ｃｃ／ｓｅｃの場合、１処理サイクル毎に２．４％ずつ制御量を低下させる。【０１００】
y=(１処理サイクル前の制御量)-2.4+10-5(Q-Q0)+10-6(m-m0)・・・（式３）【０１０１】
本変形例では、演算式に基づいてフィードバック制御の制御量及びオープンループ制御の制御量を算出するため、より一層停止精度を高めることができる。【０１０２】
第４実施例の１番目の変形例を説明する。この変形例では、図１２中のＳ２９において、上記式２に示す他の所定の演算式に従ってバケットシリンダ長をオープンループ制御する。同様に、図１２中のＳ３４でも、式２に示す他の所定の演算式に従ってバケットシリンダ長をオープンループ制御する。【０１０３】
第４実施例の２番目の変形例を説明する。この変形例では、図１２中のＳ２８とＳ２９との間及びＳ３３とＳ３４との間の両方において、所定の減少割合（第１の割合）を負荷に応じて調整する。つまり、図１１に示すテーブルに従って、制御量を低下させる割合を決定する。
【符号の説明】
【０１０４】
１０：ホイールローダ、１１：車体、１２：ホイール、１３：機械室、１４：作業機、１５：運転室、１６：操作レバー装置、１６Ａ：設定ボタン、１６Ｂ：バケットレバー、２０：ブーム、２１：ブームシリンダ、２２：ブーム角度センサ、３０：バケット、３１：バケットシリンダ、３２：ベルクランク、３３：ベルクランク角度センサ、１００，１００Ａ：コントローラ、１０１：バケットシリンダ長検出部、１０２：シリンダ長検出用テーブル、１０３：バケット姿勢制御部（シリンダ長制御部）、１０４：シリンダ長制御用テーブル、１０５：バケットシリンダ負荷検出部、２０１：油圧ポンプ、２０２：方向制御弁。
【図１】
2011114974.tif 000004
【図２】
2011114974.tif 000005
【図３】
2011114974.tif 000006
【図４】
2011114974.tif 000007
【図５】
2011114974.tif 000008
【図６】
2011114974.tif 000009
【図７】
2011114974.tif 000010
【図８】
2011114974.tif 000011
【図９】
2011114974.tif 000012
【図１０】
2011114974.tif 000013
【図１１】
2011114974.tif 000014
【図１２】
2011114974.tif 000015
【国際調査報告】
2011114974.tif 000016
2011114974.tif 000017
2011114974.tif 000018