(57)【特許請求の範囲】
【請求項１】
エンジンによって駆動される油圧ポンプと、
前記油圧ポンプから吐出された圧油が供給される油圧アクチュエータと、
各油圧アクチュエータを操作する操作手段と、
前記エンジンの第１の目標回転数を設定する第１の目標回転数設定手段と、
前記油圧ポンプの負荷圧が高くなるに従ってエンジンの最大目標回転数を制限する第２の目標回転数を演算する第２の目標回転数演算手段と、
前記第１の目標回転数および前記第２の目標回転数のうちのいずれか低い目標回転数に一致するように、エンジン回転数を制御する回転数制御手段と、
前記エンジンの出力軸に連結された発電電動機と、
前記発電電動機が発電した電力を蓄積するとともに発電電動機に電力を供給する蓄電器と、
前記油圧ポンプの負荷圧が高い状態から低い状態に急に切り替わった際に、前記エンジンの実回転数が前記目標回転数に対してあらかじめ設定した値以上に上昇するまでは前記発電電動機のエンジントルクアシスト作用を用いて前記目標回転数に一致するように、エンジン回転数を制御する制御手段と、
を備えたことを特徴とするエンジンの制御装置。
【請求項２】
エンジンによって駆動される油圧ポンプと、
前記油圧ポンプから吐出された圧油が供給される油圧アクチュエータと、
各油圧アクチュエータを操作する操作手段と、
前記エンジンの第１の目標回転数を設定する第１の目標回転数設定手段と、
前記油圧ポンプの負荷圧が高くなるに従ってエンジンの最大目標回転数を制限する第２の目標回転数を演算する第２の目標回転数演算手段と、
前記第１の目標回転数および前記第２の目標回転数のうちのいずれか低い目標回転数に一致するように、エンジン回転数を制御する回転数制御手段と、
前記エンジンの出力軸に連結された発電電動機と、
前記発電電動機が発電した電力を蓄積するとともに発電電動機に電力を供給する蓄電器と、
前記油圧ポンプの負荷圧が高い状態から低い状態に減少するに応じて、前記第２の目標回転数が上昇することにより、前記エンジンの実回転数が前記目標回転数よりもあらかじめ設定した値よりも小さい場合、前記実回転数が前記目標回転数よりもあらかじめ設定した値よりも小さい値以上に上昇するまでは、前記発電電動機のエンジントルクアシスト作用を用いて前記目標回転数に一致するように、エンジン回転数を制御する制御手段と、
を備えたことを特徴とするエンジンの制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、エンジンによって油圧ポンプを駆動する場合に用いられるエンジンの制御装置に関するものである。
【背景技術】
【０００２】
従来から、油圧ショベル、ブルドーザ、ダンプトラック、ホイールローダなどの建設機械には、ディーゼルエンジンが搭載されている。
【０００３】
図２１を用いて従来の建設機械１００の概要構成について説明する。図２１に示すように、建設機械１００は、ディーゼルエンジンであるエンジン２を駆動源として油圧ポンプ３を駆動する。油圧ポンプ３は、可変容量型の油圧ポンプが用いられ、その斜板３ａの傾転角等を変化させることで容量ｑ（ｃｃ/ｒｅｖ）が変化する。油圧ポンプ３から吐出圧ＰRP、流量Ｑ（ｃｃ/ｍｉｎ）で吐出された圧油は、操作バルブ２１〜２６を介してブームシリンダ３１等の各油圧アクチュエータ３１〜３６に供給される。各操作バルブ２１〜２６は、各操作レバー４１、４２の操作によって作動される。各油圧アクチュエータ３１〜３６に圧油が供給されることで、各油圧アクチュエータ３１〜３６が駆動され、各油圧アクチュエータ３１〜３６に接続されたブーム、アーム、バケットからなる作業機、下部走行体、上部旋回体が作動する。建設機械１００が稼動している間、作業機、下部走行体、上部旋回体にかかる負荷は、掘削土質、走行路勾配等に応じて絶えず変化する。これに応じて油圧機器（油圧ポンプ３）の負荷（以下油機負荷）、つまりエンジン２にかかる負荷が変化する。
【０００４】
エンジン２の出力Ｐ（馬力；ｋｗ）の制御は、シリンダ内へ噴射する燃料量を調整して行われる。この調整は、エンジン１の燃料噴射ポンプに付設したガバナ４を制御することで行われる。ガバナ４としては、一般的にオールスピード制御方式のガバナが用いられ、燃料ダイヤルで設定された目標エンジン回転数が維持されるように、負荷に応じてエンジン回転数ｎと燃料噴射量（トルクＴ）とが調整される。すなわち、ガバナ４は、目標回転数とエンジン回転数との差がなくなるよう燃料噴射量を増減する。
【０００５】
図２２は、エンジン２のトルク線図を示しており、横軸にエンジン回転数ｎ（ｒｐｍ；ｒｅｖ/ｍｉｎ）をとり、縦軸にトルクＴ（Ｎ・ｍ）をとっている。図２２において、最大トルク線Ｒで規定される領域が、エンジン２が出し得る性能を示す。ガバナ４は、トルクＴが最大トルク線Ｒを超えて排気煙限界とならないように、またエンジン回転数ｎがハイアイドル回転数ｎHを超えて過回転とならないように、エンジン２を制御する。最大トルク線Ｒ上の定格点Ｖでエンジン２の出力（馬力）Ｐが最大になる。Ｊは、油圧ポンプ３で吸収される馬力が等馬力になっている等馬力曲線を示している。
【０００６】
燃料ダイヤルで最大目標回転数が設定されると、ガバナ４は定格点Ｖとハイアイドル点ｎHとを結ぶ最高速レギュレーションラインＦe上で調速を行う。
【０００７】
油圧ポンプ３の負荷が大きくなるにつれて、エンジン２の出力とポンプ吸収馬力とが釣り合うマッチング点は、最高速レギュレーションラインＦe上を定格点Ｖ側に移動する。マッチング点が定格点Ｖ側に移動するときエンジン回転数ｎは徐々に減じられ、定格点Ｖではエンジン回転数ｎは定格回転数になる。
【０００８】
このようにエンジン回転数ｎをほぼ一定の高回転数に固定して作業を行うと、燃料消費率が大きく（悪く）、ポンプ効率が低いという問題がある。なお、燃料消費率（以下燃費）とは、１時間、出力１ｋＷ当たりの燃料の消費量をいい、エンジン２の効率の一指標である。またポンプ効率とは、容積効率、トルク効率で規定される油圧ポンプ３の効率のことである。
【０００９】
図２２において、Ｍは等燃費曲線を示している。等燃費曲線Ｍの谷となるＭ1で燃費が最小となり、燃費最小点Ｍ1から外側に向かうにつれて燃費は大きくなる。
【００１０】
図２２からも明らかなように、レギュレーションラインＦeは、等燃費曲線Ｍ上で燃費が比較的大きい領域に相当する。このため、従来の制御方法によれば燃費が大きく（悪く）、エンジン効率上望ましくない。
【００１１】
一方、可変容量型の油圧ポンプ３の場合、一般的に、同じ吐出圧ＰRPであればポンプ容量ｑ（斜板傾転角度）が大きいほど容積効率、トルク効率が高くポンプ効率が高いということが知られている。
【００１２】
また下記（１）式からも明らかなように、油圧ポンプ３から吐出される圧油の流量Ｑが同じであれば、エンジン２の回転数ｎを低くすればするほどポンプ容量ｑを大きくすることができる。このためエンジン２を低速化すればポンプ効率を高くすることができる。
【００１３】
Ｑ＝ｎ・ｑ  …（１）
したがって油圧ポンプ３のポンプ効率を高めるためには、エンジン２を回転数ｎが低い低速領域で稼動させればよい。
【００１４】
しかし、図２２からも明らかなように、レギュレーションラインＦeは、エンジン２の高回転領域に相当する。このため従来の制御方法によればポンプ効率が低いという問題がある。
【００１５】
また、レギュレーションラインＦe上でエンジン２を稼動させると、高負荷になるとエンジン回転数が低下するため、エンストに至るおそれがある。
【００１６】
このような負荷にかからずエンジン回転数をほぼ固定とする制御方法に対して、レバー操作量および負荷に応じてエンジン回転数を変化させるという制御方法が特許文献１に記載されている。
【００１７】
この特許文献１では、図２２に示すように、燃費最小点Ｍ1を通る目標エンジン運転線Ｌ0が設定される。
【００１８】
そして、各操作レバー４１、４２、４３、４４の操作量等に基づいて、油圧ポンプ３の必要回転数が演算され、このポンプ必要回転数に対応する第１のエンジン必要回転数が演算される。また、各操作レバー４１、４２、４３、４４の操作量等に基づいて、エンジン必要馬力が演算され、このエンジン必要馬力に対応する第２のエンジン必要回転数が算出される。ここで、第２のエンジン必要回転数は、図２２の目標エンジン運転線Ｌ0上のエンジン回転数として算出される。そして、これら第１および第２のエンジン必要回転数のうち大きい方のエンジン目標回転数が得られるように、エンジン回転数およびエンジントルクが制御される。
【００１９】
図２２に示すように、目標エンジン運転線Ｌ0に沿って、エンジン２の回転数を制御すると、燃費、エンジン効率、ポンプ効率が向上する。これは、同じ馬力を出力させ、同じ要求流量を得る場合でも、レギュレーションラインＦe上の点ｐt1でマッチングさせるよりも、同じ等馬力線Ｊ上の点であって目標エンジン運転線Ｌ0上の点ｐt2でマッチングさせた方が、高回転、低トルクから低回転、高トルクに移行して、ポンプ容量ｑが大となり、等燃費曲線Ｍ上の燃費最小点Ｍ1に近い点で運転されるからである。また低回転領域でエンジン２が稼動することにより騒音の向上が図られ、エンジンフリクション、ポンプアンロードロスなどが向上する。
【００２０】
また、建設機械の分野で、発電電動機によってエンジンの駆動力をアシストするハイブリッド方式の建設機械が開発されつつあり、既に多くの特許出願がなされている。
【００２１】
たとえば、特許文献２では、図２２を流用すると、燃料ダイヤルで設定された設定回転数に対応するレギュレーションラインＦe0に沿ってエンジン２を制御している。レギュレーションラインＦe0と目標エンジン運転線Ｌ0とが交差する点Ａに対応する目標回転数ｎrを求め、エンジン目標回転数ｎrと現在のエンジン回転数ｎとの偏差が正である場合には、発電電動機を電動作用させてエンジン２の駆動力を、発電電動機で発生したトルクによってアシストし、同偏差が負である場合には、発電電動機を発電作用させて蓄電器に電力を蓄積させている。
【先行技術文献】
【特許文献】
【００２２】
【特許文献１】特開平１１−２１４４号公報
【特許文献２】特開２００３−２８０７１号公報
【発明の概要】
【発明が解決しようとする課題】
【００２３】
ところで、特許文献１記載の発明では、油圧ポンプ３の負荷に応じてエンジン目標回転数が定まる。そして、図２２に示すように、油圧ポンプ３が高負荷になるほど、目標エンジン運転線Ｌ0上の高負荷側にマッチング点がＢ→Ａと移動する。ここで、さらに作業機が硬い岩盤などに当たるなどの高負荷になると、ポンプ圧が急激に上がり、リリーフバルブが動作し、余分なエネルギーロスを招くため、従来では、油圧ポンプの斜板の制御によってポンプ容量を変化させ、これによって、リリーフ流量を下げるようにしていた。
【００２４】
しかしながら、リリーフ流量を下げるためにポンプ容量を小さくすると、ポンプ効率が下がるという問題点があった。また、この場合、エンジン回転数は、最適エンジン回転数よりも高いエンジン回転数であるため、エンジンの効率も悪いという問題点があった。
【００２５】
この発明は、上記に鑑みてなされたものであって、リリーフ時などの高負荷時におけるポンプ効率およびエンジン効率を高めることができるエンジンの制御装置を提供することを目的とする。
【課題を解決するための手段】
【００２６】
上述した課題を解決し、目的を達成するために、この発明にかかるエンジンの制御装置は、エンジンによって駆動される油圧ポンプと、前記油圧ポンプから吐出された圧油が供給される油圧アクチュエータと、各油圧アクチュエータを操作する操作手段と、前記エンジンの第１の目標回転数を設定する第１の目標回転数設定手段と、前記油圧ポンプの負荷圧が高くなるに従ってエンジンの最大目標回転数を制限する第２の目標回転数を演算する第２の目標回転数演算手段と、前記第１の目標回転数および前記第２の目標回転数のうちのいずれか低い目標回転数に一致するように、エンジン回転数を制御する回転数制御手段と、を備えたことを特徴とする。
【００２７】
また、この発明にかかるエンジンの制御装置は、上記の発明において、前記第１の目標回転数設定手段は、前記操作手段の操作量に応じて、前記エンジンの第１の目標回転数を演算することを特徴とする。
【００２８】
また、この発明にかかるエンジンの制御装置は、上記の発明において、前記油圧ポンプの負荷圧が上昇するにしたがって、該油圧ポンプの吸収可能な馬力が低下するようにポンプ馬力制限値を演算する馬力制限値演算手段を備え、前記第２の目標回転数演算手段は、前記馬力制限値演算手段が演算した前記油圧ポンプの馬力制限値に応じて、エンジンの最大目標回転数を制限するように前記第２の目標回転数を演算することを特徴とする。
【００２９】
また、この発明にかかるエンジンの制御装置は、上記の発明において、前記油圧ポンプの負荷圧がリリーフ圧に対してあらかじめ設定された値より小さい値を超えた場合、該油圧ポンプの吸収可能な馬力が低下するようにポンプ馬力制限値を演算する馬力制限値演算手段を備え、前記第２の目標回転数演算手段は、前記馬力制限値演算手段が演算した前記油圧ポンプの馬力制限値に応じて、エンジンの最大目標回転数を制限するように前記第２の目標回転数を演算することを特徴とする。
【００３０】
また、この発明にかかるエンジンの制御装置は、上記の発明において、前記馬力制限値演算手段が演算した前記油圧ポンプの馬力制限値に応じて、前記油圧ポンプの吸収可能な最大トルクを制御する最大吸収トルク制御手段を備えたことを特徴とする。
【００３１】
また、この発明にかかるエンジンの制御装置は、上記の発明において、前記エンジンの出力軸に連結された発電電動機と、前記発電電動機が発電した電力を蓄積するとともに発電電動機に電力を供給する蓄電器と、前記油圧ポンプの負荷圧が高い状態から低い状態に急に切り替わった際に、前記エンジンの実回転数が前記目標回転数に対してあらかじめ設定した値以上に上昇するまでは前記発電電動機のエンジントルクアシスト作用を用いて前記目標回転数に一致するように、エンジン回転数を制御する制御手段と、を備えたことを特徴とする。
【００３２】
また、この発明にかかるエンジンの制御装置は、上記の発明において、前記エンジンの出力軸に連結された発電電動機と、前記発電電動機が発電した電力を蓄積するとともに発電電動機に電力を供給する蓄電器と、前記油圧ポンプの負荷圧が高い状態から低い状態に減少するに応じて、前記第２の目標回転数が上昇することにより、前記エンジンの実回転数が前記目標回転数よりもあらかじめ設定した値よりも小さい場合、前記実回転数が前記目標回転数よりもあらかじめ設定した値よりも小さい値以上に上昇するまでは、前記発電電動機のエンジントルクアシスト作用を用いて前記目標回転数に一致するように、エンジン回転数を制御する制御手段と、を備えたことを特徴とする。
【発明の効果】
【００３３】
この発明にかかるエンジンの制御装置は、第１の回転数設定手段が、前記エンジンの第１の目標回転数を設定し、第２の目標回転数演算手段が、油圧ポンプの負荷圧が高くなるに従ってエンジンの最大目標回転数を制限する第２の目標回転数を演算し、回転数制御手段が、前記第１の目標回転数および前記第２の目標回転数のうちのいずれか低い目標回転数に一致するように、エンジン回転数を制御し、エンジン回転数を低くするようにしているので、リリーフ時などの高負荷時におけるポンプ効率およびエンジン効率を高めることができる。
【図面の簡単な説明】
【００３４】
【図１】図１は、この発明の実施の形態にかかる建設機械の概要構成を示すブロック図である。
【図２】図２は、図１に示したコントローラの制御フローを示す図である（その１）。
【図３】図３は、図２に示した目標流量演算部の制御フローを示す図である。
【図４】図４は、図１に示したエンジン目標回転数加算値演算部の処理手順を示すフローチャートである。
【図５】図５は、図２に示した目標回転数加算値演算部の処理の一例を示した図である。
【図６】図６は、図２に示したポンプ出力制限演算部の処理フローを示す図である。
【図７】図７は、エンジン目標回転数加算値演算部による処理を説明するためのトルク線図である。
【図８】図８は、エンジン目標回転数加算値演算部による処理を説明するためのエンジン回転数とエンジントルクの時間変化を示す図である。
【図９】図９は、各作業パターンに対応するポンプ出力制限値を説明する図である。
【図１０】図１０は、図１に示したコントローラの制御フローを示す図である（その２）。
【図１１】図１１は、アシスト有無判定部の処理フローを示す図である。
【図１２】図１２は、エンジン加速時にモジュレーション処理が無い場合の動作を説明する図である。
【図１３】図１３は、エンジン加速時にモジュレーション処理が有る場合の動作を説明する図である。
【図１４】図１４は、エンジン減速時にモジュレーション処理が無い場合の動作を説明する図である。
【図１５】図１５は、エンジン減速時にモジュレーション処理が有る場合の動作を説明する図である。
【図１６】図１６は、この発明の実施の形態を説明するために用いたトルク線図である。
【図１７】図１７は、この発明の実施の形態を説明するために用いたトルク線図である。
【図１８】図１８は、この発明の実施の形態を説明するために用いたトルク線図である。
【図１９】図１９は、この発明の実施の形態の変形例にかかる建設機械の概要構成を示すブロック図である。
【図２０】図２０は、図１９に示したコントローラの制御フローを示す図である。
【図２１】図２１は、従来の建設機械の概要構成を示すブロック図である。
【図２２】図２２は、従来技術を説明するために用いたトルク線図である。
【発明を実施するための形態】
【００３５】
以下、図面を参照してこの発明の実施の形態であるエンジンの制御装置について説明する。なお、この実施の形態では、油圧ショベルなどの建設機械に搭載されるディーゼルエンジンおよび油圧ポンプを制御する場合について説明する。
【００３６】
図１は、この発明の実施の形態である建設機械１の全体構成を示す図である。この建設機械１は、油圧ショベルである。
【００３７】
建設機械１は、上部旋回体と下部走行体とを備え、下部走行体は左右の履帯からなる。車体にはブーム、アーム、バケットからなる作業機が取り付けられている。ブームシリンダ３１が駆動することによりブームが作動し、アームシリンダ３２が駆動することによりアームが作動し、バケットシリンダ３３が駆動することによりバケットが作動する。また走行モータ３６および走行モータ３５がそれぞれ駆動することにより左履帯および右履帯がそれぞれ回転する。また、旋回モータ３４が駆動することによりスイングマシナリが駆動し、スイングピニオン、スイングサークル等を介して上部旋回体が旋回する。
【００３８】
エンジン２は、ディーゼルエンジンであり、その出力（馬力；ｋｗ）の制御は、シリンダ内へ噴射する燃料量を調整することで行われる。この調整はエンジン２の燃料噴射ポンプに付設したガバナを制御することで行われ、エンジンコントローラ４は、このガバナの制御を含めたエンジンの制御を行う。
【００３９】
コントローラ６は、エンジンコントローラ４に対して、エンジン回転数を目標回転数ｎcomにするための回転指令値を出力し、エンジンコントローラ４は、目標トルク線Ｌ1で目標回転数ｎ_comが得られるように燃料噴射量を増減する。また、エンジンコントローラ４は、エンジン２のエンジン回転数および燃料噴射量から推定されるエンジントルクを含むエンジンデータeng_dataをコントローラ６に出力する。
【００４０】
エンジン２の出力軸は、ＰＴＯ軸１０を介して発電電動機１１の駆動軸に連結される。発電電動機１１は発電作用と電動作用を行う。つまり、発電電動機１１は電動機（モータ）として作動し、また発電機としても作動する。また発電電動機１１はエンジン２を始動させるスタータとしても機能する。スタータスイッチがオンされると、発電電動機１１が電動作用し、エンジン２の出力軸を低回転（たとえば４００〜５００ｒｐｍ）で回転させ、エンジン２を始動させる。
【００４１】
発電電動機１１は、インバータ１３によってトルク制御される。インバータ１３は後述するように、コントローラ６から出力される発電電動機指令値ＧＥＮ_comに応じて発電電動機１１をトルク制御する。
【００４２】
インバータ１３は直流電源線を介して蓄電器１２に電気的に接続されている。なおコントローラ６は蓄電器１２を電源として動作する。
【００４３】
蓄電器１２は、キャパシタや蓄電池などによって構成され、発電電動機１１が発電作用した場合に発電した電力を蓄積する（充電する）。また蓄電器１２は同蓄電器１２に蓄積された電力をインバータ１３に供給する。なお本明細書では静電気として電力を蓄積するキャパシタや鉛電池、ニッケル水素電池、リチウムイオン電池等の蓄電池も含めて「蓄電器」と称するものとする。
【００４４】
エンジン２の出力軸には、ＰＴＯ軸１０を介して油圧ポンプ３の駆動軸が連結されており、エンジン出力軸が回転することにより油圧ポンプ３が駆動する。油圧ポンプ３は可変容量型の油圧ポンプであり、斜板の傾転角が変化することで容量ｑ（ｃｃ/ｒｅｖ）が変化する。
【００４５】
油圧ポンプ３から吐出圧ＰRp、流量Ｑ（ｃｃ/ｍｉｎ）で吐出された圧油は、ブーム用の操作バルブ２１、アーム用の操作バルブ２２、バケット用の操作バルブ２３、旋回用の操作バルブ２４、右走行用の操作バルブ２５、左走行用の操作バルブ２６にそれぞれ供給される。ポンプ吐出圧ＰRpは、油圧センサ７で検出され、油圧検出信号がコントローラ６に入力される。
【００４６】
操作バルブ２１〜２６から出力された圧油はそれぞれ、ブームシリンダ３１、アームシリンダ３２、バケットシリンダ３３、旋回モータ３４、右走行用の走行モータ３５、左走行用の走行モータ３６に供給される。これにより、ブームシリンダ３１、アームシリンダ３２、バケットシリンダ３３、旋回モータ３４、走行モータ３５、走行モータ３６がそれぞれ駆動され、ブーム、アーム、バケット、上部旋回体、下部走行体の右履帯、左履帯が作動する。
【００４７】
建設機械１の運転席の前方の右側、左側にはそれぞれ、作業・旋回用右の操作レバー４１、作業・旋回用左の操作レバー４２が設けられているとともに、走行用右の操作レバー４３、走行用左の操作レバー４４が設けられている。
【００４８】
作業・旋回用右の操作レバー４１は、ブーム、バケットを作動させるための操作レバーであり、操作方向に応じてブーム、バケットを作動させるとともに、操作量に応じた速度でブーム、バケットを作動させる。
【００４９】
操作レバー４１には、操作方向、操作量を検出するセンサ４５が設けられている。センサ４５は、操作レバー４１の操作方向、操作量を示すレバー信号をコントローラ６に入力する。操作レバー４１がブームを作動させる方向に操作された場合には、操作レバー４１の中立位置に対する傾動方向、傾動量に応じて、ブーム上げ操作量、ブーム下げ操作量を示すブームレバー信号Ｌb0がコントローラ６に入力される。また、操作レバー４１がバケットを作動させる方向に操作された場合には、操作レバー４１の中立位置に対する傾動方向、傾動量に応じて、バケット掘削操作量、バケットダンプ操作量を示すバケットレバー信号Ｌbkがコントローラ６に入力される。
【００５０】
操作レバー４１がブームを作動させる方向に操作された場合には、操作レバー４１の傾動量に応じたパイロット圧（ＰＰＣ圧）ＰRboが、ブーム用の操作バルブ２１の各パイロットポートのうちレバー傾動方向（ブーム上げ方向、ブーム下げ方向）に対応するパイロットポート２１ａに加えられる。
【００５１】
同様に、操作レバー４１がバケットを作動させる方向に操作された場合には、操作レバー４１の傾動量に応じたパイロット圧（ＰＰＣ圧）ＰRbkが、バケット用の操作バルブ２３の各パイロットポートのうちレバー傾動方向（バケット掘削方向、バケットダンプ方向）に対応するパイロットポート２３ａに加えられる。
【００５２】
作業・旋回用左の操作レバー４２は、アーム、上部旋回体を作動させるための操作レバーであり、操作方向に応じてアーム、上部旋回体を作動させるとともに、操作量に応じた速度でアーム、上部旋回体を作動させる。
【００５３】
操作レバー４２には、操作方向、操作量を検出するセンサ４６が設けられている。センサ４６は、操作レバー４２の操作方向、操作量を示すレバー信号をコントローラ６に入力する。操作レバー４２がアームを作動させる方向に操作された場合には、操作レバー４２の中立位置に対する傾動方向、傾動量に応じて、アーム掘削操作量、アームダンプ操作量を示すアームレバー信号Ｌarがコントローラ６に入力される。また操作レバー４２が上部旋回体を作動させる方向に操作された場合には、操作レバー４２の中立位置に対する傾動方向、傾動量に応じて、右旋回操作量、左旋回操作量を示す旋回レバー信号Ｌswがコントローラ６に入力される。
【００５４】
操作レバー４２がアームを作動させる方向に操作された場合には、操作レバー４２の傾動量に応じたパイロット圧（ＰＰＣ圧）ＰRarが、アーム用の操作バルブ２２の各パイロットポートのうちレバー傾動方向（アーム掘削方向、アームダンプ方向）に対応するパイロットポート２２ａに加えられる。
【００５５】
同様に、操作レバー４２が上部旋回体を作動させる方向に操作された場合には、操作レバー４２の傾動量に応じたパイロット圧（ＰＰＣ圧）ＰRswが、旋回用の操作バルブ２４の各パイロットポートのうちレバー傾動方向（右旋回方向、左旋回方向）に対応するパイロットポート２４ａに加えられる。
【００５６】
走行用右の操作レバー４３、走行用左の操作レバー４４はそれぞれ右履帯、左履帯を作動させるための操作レバーであり、操作方向に応じて履帯を作動させるとともに、操作量に応じた速度で履帯を作動させる。
【００５７】
操作レバー４３の傾動量に応じたパイロット圧（ＰＰＣ圧）ＰRtrが、右走行用の操作バルブ２５のパイロットポート２５ａに加えられる。
【００５８】
パイロット圧ＰRtrは、油圧センサ９で検出され、右走行量を示す右走行パイロット圧ＰRcrがコントローラ６に入力される。同様に、操作レバー４４の傾動量に応じたパイロット圧（ＰＰＣ圧）ＰRtlが、左走行用操作弁２６のパイロットポート２６ａに加えられる。パイロット圧ＰRtlは、油圧センサ８で検出され、左走行量を示す左走行パイロット圧ＰRclがコントローラ６に入力される。
【００５９】
各操作バルブ２１〜２６は流量方向制御弁であり、対応する操作レバー４１〜４４の操作方向に応じた方向にスプールを移動させるとともに、操作レバー４１〜４４の操作量に応じた開口面積だけ油路が開口するようにスプールを移動させる。
【００６０】
ポンプ制御バルブ５は、コントローラ６から出力される制御電流pc-epcによって動作し、サーボピストンを介してポンプ制御バルブ５を変化させる。
【００６１】
ポンプ制御バルブ５は、油圧ポンプ３の吐出圧ＰRp（ｋｇ/ｃｍ２）と油圧ポンプ３の容量ｑ（ｃｃ/ｒｅｖ）の積が制御電流pc-epcに対応するポンプ吸収トルクＴpcomを超えないように、油圧ポンプ３の斜板の傾転角を制御する。この制御は、ＰＣ制御と呼ばれている。
【００６２】
発電電動機１１には発電電動機１１の現在の実回転数ＧＥＮ_spd（ｒｐｍ）、つまりエンジン２の実回転数を検出する回転センサ１４が付設されている。回転センサ１４で検出される実回転数ＧＥＮ_spdを示す信号はコントローラ６に入力される。
【００６３】
また、畜電器１２には、畜電器１２の電圧BATT_voltを検出する電圧センサ１５が設けられている。電圧センサ１５で検出される電圧BATT_voltを示す信号はコントローラ６に入力される。
【００６４】
また、コントローラ６は、インバータ１３に発電電動機指令値ＧＥＮ_comを出力し、発電電動機１１を発電作用または電動作用させる。コントローラ６からインバータ１３に対して、発電電動機１１を発電機として作動させるための指令値ＧＥＮ_comが出力されると、エンジン２で発生した出力トルクの一部は、エンジン出力軸を介して発電電動機１１の駆動軸に伝達されてエンジン２のトルクを吸収して発電が行われる。そして、発電電動機１１で発生した交流電力はインバータ１３で直流電力に変換されて直流電源線を介して蓄電器１２に電力が蓄積される（充電される）。
【００６５】
またコントローラ６からインバータ１３に対して、発電電動機１１を電動機として作動させるための指令値ＧＥＮ_comが出力されると、インバータ１３は発電電動機１１が電動機として作動するように制御する。すなわち蓄電器１２から電力が出力され（放電され）蓄電器１２に蓄積された直流電力がインバータ１３で交流電力に変換されて発電電動機１１に供給され、発電電動機１１の駆動軸を回転作動させる。これにより発電電動機１１でトルクが発生し、このトルクは、発電電動機１１の駆動軸を介してエンジン出力軸に伝達されて、エンジン２の出力トルクに加算される（エンジン２の出力がアシストされる）。この加算した出力トルクは、油圧ポンプ３で吸収される。
【００６６】
発電電動機１１の発電量（吸収トルク量）、電動量（アシスト量；発生トルク量）は、上記発電電動機指令値ＧＥＮ_comの内容に応じて変化する。
【００６７】
コントローラ６は、ガバナを含むエンジンコントローラ４に対して、回転指令値を出力して、現在の油圧ポンプ３の負荷に応じた目標回転数が得られるように燃料噴射量を増減して、エンジン２の回転数ｎとトルクＴを調整する。
【００６８】
つぎに、コントローラ６による制御処理について説明する。図２は、コントローラ６による制御フローを示す図である。図３は、図２に示した目標流量演算部の処理フローを示す図である。また、図４は、図２に示したエンジン目標回転数加算値演算部の処理を示すフローチャートである。さらに、図６は、図２に示したポンプ出力制限演算部の処理フローを示す図である。
【００６９】
まず、図２および図３に示すように、目標流量演算部５０では、ブームレバー信号Ｌbo、アームレバー信号Ｌar、バケットレバー信号Ｌbk、旋回レバー信号Ｌsw、右走行パイロット圧ＰRcr、左走行パイロット圧ＰRclが入力され、これらの値に基づいて、対応するブームシリンダ３１の目標流量Ｑbo、アームシリンダ３２の目標流量Ｑar、バケットシリンダ３３の目標流量Ｑbk、旋回モータ３４の目標流量Ｑsw、右走行用の走行モータ３５の目標流量Ｑcr、左走行用の走行モータ３６毎の目標流量Ｑclが演算される。
【００７０】
コントローラ６内の記憶装置には、各油圧アクチュエータ毎に、操作量と目標流量との関数関係５１ａ、５２ａ、５３ａ、５４ａ、５５ａ、５６ａがデータテーブル形式で記憶されている。
【００７１】
ブーム目標流量演算部５１は、現在のブーム上げ方向の操作量若しくはブーム下げ方向の操作量Ｌboに対応するブーム目標流量Ｑboを関数関係５１ａに従って演算する。
【００７２】
アーム目標流量演算部５２は、現在のアーム掘削方向の操作量若しくはアームダンプ方向の操作量Ｌarに対応するアーム目標流量Ｑaをが関数関係５２ａに従って演算する。
【００７３】
バケット目標流量演算部５３は、現在のバケット掘削方向の操作量若しくはバケットダンプ方向の操作量Ｌbkに対応するバケット目標流量Ｑbkを関数関係５３ａに従って演算する。
【００７４】
旋回目標流量演算部５４は、現在の右旋回方向の操作量若しくは左旋回方向の操作量Ｌswに対応する旋回目標流量Ｑswを関数関係５４ａに従って演算する。
【００７５】
右走行目標流量演算部５５は、現在の右走行パイロット圧ＰRcrに対応する右走行目標流量Ｑcrを関数関係５５ａに従って演算する。
【００７６】
左走行目標流量演算部５６は、現在の左走行パイロット圧ＰRclに対応する左走行目標流量Ｑclを関数関係５６ａに従って演算する。
【００７７】
なお、演算処理上、ブーム上げ操作量、アーム掘削操作量、バケット掘削操作量、右旋回操作量は、プラス符号の操作量として扱い、ブーム下げ操作量、アームダンプ操作量、バケットダンプ操作量、左旋回操作量は、マイナス符合の操作量として扱うものとする。
【００７８】
ポンプ目標吐出流量演算部６０は、油圧アクチュエータ目標流量演算部５０で演算された各油圧アクチュエータ目標流量Ｑbo、Ｑar、Ｑbk、Ｑsw、Ｑcr、Ｑclの総和を、ポンプ目標吐出流量Ｑsumとして、下記のようにして求める処理を実行する。
【００７９】
Ｑsum＝Ｑbo＋Ｑar＋Ｑbk＋Ｑsw＋Ｑcr＋Ｑcl  …（２）
ここで、各油圧アクチュエータの目標流量の総和をポンプ目標吐出流量としているが、各油圧アクチュエータ目標流量Ｑbo、Ｑar、Ｑbk、Ｑsw、Ｑcr、Ｑclのうちで最大の目標流量を、油圧ポンプ３の目標吐出流量としてもよい。
【００８０】
第１のエンジン目標回転数演算部６１は、目標流量演算部５０によって演算出力されたポンプ目標吐出流量Ｑsumに対応する第１のエンジン目標回転数ｎcom1を演算する。ここで、コントローラ６の記憶装置には、ポンプ目標吐出流量Ｑsumの増加に応じて第１のエンジン目標回転数ｎcom1が増加する関数関係６１ａがデータテーブル形式で記憶されている。この第１のエンジン目標回転数ｎcom1は、下記に示すように、変換定数をαとして、油圧ポンプ３を最大容量ｑmaxで作動させた際にポンプ目標吐出流量Ｑsumを吐出することができる最小のエンジン回転数として与えられる。
【００８１】
ｎcom1＝Ｑsum/ｑmax・α  …（３）
第１のエンジン回転数演算部６１では、現在のポンプ目標吐出流量Ｑsumに対応する第１のエンジン目標回転数ｎcom1が関数関係６１ａ、つまり上記（３）式に従って演算される。
【００８２】
コントローラ６の判定部６２は、現在のポンプ目標吐出流量Ｑsumが所定の流量Ｑminよりも大きいか否かを判定する。ここで、しきい値となる所定の流量は、各操作レバー４１〜４４が中立位置から操作されたか否かを判断するための流量に設定される。
【００８３】
コントローラ６内の第３のエンジン目標回転数設定部６８では、判定部６２の判定の結果、現在のポンプ目標吐出流量Ｑsumが所定の流量Ｑmin以下、つまり判定結果がＮＯである場合には、第３のエンジン目標回転数ｎcom3が、エンジン２のローアイドル回転数ｎL付近の回転数ｎJ（たとえば１０００ｒｐｍ）に設定される。これに対して現在のポンプ目標吐出流量Ｑsumが所定の流量Ｑminよりも大きい、つまり判定結果がＹＥＳである場合には、第３のエンジン目標回転数ｎcom3が、エンジン２のローアイドル回転数ｎLよりも大きい回転数ｎM（たとえば１４００ｒｐｍ）に設定される。
【００８４】
一方、エンジンコントローラ４からコントローラ６には、エンジン２の現在のエンジン回転数Ｎeと、燃料噴射量から推定されたエンジン２のエンジントルクＴeとが入力される。コントローラ６内のフィルタ１０１は、時定数０．５（ｓｅｃ）を有したフィルタであり、入力されたエンジントルクＴeの値をフィルタリングしたエンジントルクＴe_fを出力する。コントローラ６内のエンジン出力演算部１０２は、エンジンコントローラ４から入力されたエンジン回転数Ｎeとフィルタ１０１から出力されたエンジントルクＴe_fとを乗算し、さらに変換定数Ｃonstを乗算したエンジン出力（馬力）Ｐeを算出する。
【００８５】
コントローラ６内の目標エンジン出力演算部１０３は、後述するエンジン目標回転数加算値ｎcom_addが加算された第２のエンジン目標回転数ｎcom2に対する目標エンジン出力（馬力）Ｐe_aimを関数関係１０３ａをもとに演算する。なお、第２のエンジン目標回転数ncom2の初期値は、第１のエンジン目標回転数ncom１である。ここで、コントローラ６内の記憶装置には、関数関係１０３ａが記憶されており、目標エンジン出力演算部１０３は、この関数関係１０３ａを用いて目標エンジン出力Ｐe_aimを出力する。
【００８６】
ここで、関数関係１０３ａは、図２２に示した目標エンジン運転線Ｌ0と同じである図７に示した目標トルク線Ｌ１に、そのときのエンジン回転数を乗算した目標馬力線から、所定馬力分、下げた負荷感知境界線である。
【００８７】
コントローラ６内のエンジン目標回転数加算値演算部１０４は、図４に示したフローチャートに従ってエンジン目標回転数加算値ｎcom_addを出力する。図４において、エンジン目標回転数加算値演算部１０４は、まず、初期値として、ｎcom_add「０」に設定する（ステップＳ１０１）。その後、エンジン出力演算部１０２からエンジン出力Ｐeと、目標エンジン出力演算部１０３から目標エンジン出力Ｐe_aimとを取得する（ステップＳ１０２）。ここで、目標エンジン出力演算部１０３は、初期値として第１のエンジン目標回転数ncom１を用いて目標エンジン出力Ｐe_aimを出力し、その後の演算では、第２のエンジン目標回転数ncom2を用いて順次目標エンジン出力Ｐe_aimを出力する。
【００８８】
さらに、エンジン目標回転数加算値演算部１０４は、このエンジン出力Ｐeから目標エンジン出力Ｐe_aimを除算した値に変換係数Ｉeを乗算した値Ｉaddを算出する（ステップＳ１０３）。この値Ｉaddは、エンジン回転数に変換された値である。
【００８９】
その後、エンジン目標回転数加算値演算部１０４は、目標流量演算部５０が出力するポンプ吐出流量目標値Ｑsumの値が増加方向に変化しているか、あるいは増加後に値が固定している状態であるか否かを判断する（ステップＳ１０４）。ポンプ吐出流量目標値Ｑsumの値が増加方向に変化、あるいは増加後に固定している状態でない場合（ステップＳ１０４，Ｎｏ）には、値Ｉaddをエンジン目標回転数加算値ｎcom_addに加算する処理を行う（ステップＳ１０６）。
【００９０】
一方、ポンプ吐出流量目標値Ｑsumの値が増加方向に変化、あるいは増加後に固定している状態である場合（ステップＳ１０４，Ｙｅｓ）には、さらに、値Ｉaddが負であるか否かを判断する（ステップＳ１０５）。値Ｉaddが負でない場合（ステップＳ１０５，Ｎｏ）には、ステップＳ１０６に移行して、値Ｉaddをエンジン目標回転数加算値ｎcom_addに加算する処理を行う。一方、値Ｉaddが負である場合（ステップＳ１０５，Ｙｅｓ）には、値Ｉaddの加算処理を行わずに、ステップＳ１０７に移行する。
【００９１】
すなわち、このステップＳ１０４〜１０６の処理では、目標流量演算部５０が出力するポンプ吐出流量目標値Ｑsumの値が増加方向に変化しているか、あるいは増加後に値が固定している状態である場合であって、値Ｉaddが負である場合には、値Ｉaddをエンジン目標回転数加算値ｎcom_addに加算する処理を行わないようにしている。具体的には、図５に示すように、ポンプ吐出流量目標値Ｑsumの増加分ΔＱsumが０以上である場合に、値Ｉaddが負になっても、エンジン目標回転数加算値ｎcom_addから値Ｉaddの絶対値分を減じる処理を行わず、現在の第２のエンジン目標回転数ncom2を維持する処理を行う。これは、ポンプ吐出流量目標値Ｑsumが０以上である場合、たとえ値Ｉaddが負になっても、レバー操作によって操作者がパワーを減じる意思があるまでエンジン目標回転数を下げないようにして制御系を安定させるためである。
【００９２】
その後、エンジン目標回転数加算値ｎcom_addが正であるか否かを判断する（ステップＳ１０７）。エンジン目標回転数加算値ｎcom_addが正である場合（ステップＳ１０７，Ｙｅｓ）には、さらに、全レバー入力（レバーポテンショ信号）がニュートラル状態あるいはその近傍であるか否かを判断する（ステップＳ１０８）。全レバー入力がニュートラル状態あるいはその近傍でない場合（ステップＳ１０８，Ｎｏ）には、さらに、後述するアシストフラグassist_flagがＴrueであるか否かを判断する（ステップＳ１０９）。
【００９３】
そして、エンジン目標回転数加算値ｎcom_addが正であって（ステップＳ１０７，Ｙｅｓ）、全レバー入力がニュートラル状態あるいはその近傍でなくて（ステップＳ１０８，Ｎｏ）、アシストフラグassist_flagがＴrueでない場合（ステップＳ１０９，Ｎｏ）に、エンジン目標回転数加算値ｎcom_addを第１のエンジン目標回転数ncom1に付加する処理を行って（ステップＳ１１０）、第２のエンジン目標回転数ｎcom2（補正エンジン目標回転数に相当）を生成し、ステップＳ１０２に移行し、上述した処理を繰り返す。
【００９４】
一方、エンジン目標回転数加算値ｎcom_addが正でない場合（ステップＳ１０７，Ｎｏ）、全レバー入力がニュートラル状態あるいはその近傍である場合（ステップＳ１０８，Ｙｅｓ）、あるいはアシストフラグassist_flagがＴrueである場合（ステップＳ１０９，Ｙｅｓ）には、エンジン目標回転数加算値ｎcom_addを第１のエンジン目標回転数ncom1に付加する処理を行わずに、現在の第１のエンジン目標回転数ｎcom1をそのまま第２のエンジン目標回転数（補正エンジン目標回転数に相当）として出力し、ステップＳ１０２に移行し、上述した処理を繰り返す。
【００９５】
これは、エンジン目標回転数加算値ｎcom_addが正でない場合、負荷感知境界線に近づいておらず、負荷が大きくないことを意味し、エンジン回転数を増大させる必要がないからである。また、全レバー入力がニュートラル状態あるいはその近傍である場合には、操作者の意思を優先するからである。さらに、アシストフラグassist_flagがＴrueである場合、エンジン回転数を増大させるまでもなく、電動モータによってアシストされるからである。
【００９６】
このようにして出力されるエンジン目標回転数加算値ｎcom_addは、加算部１０５によって第１のエンジン目標回転数ｎcom1に加算され、第２のエンジン目標回転数ｎcom2として出力される。また、この第２のエンジン目標回転数ｎcom2は、分岐部１０６を介して目標エンジン出力演算部１０３に出力される。
【００９７】
コントローラ６内の最大値選択部６４は、第２のエンジン目標回転数ｎcom2、第３のエンジン目標回転数ｎcom3のうちのいずれか高い方のエンジン目標回転数ｎcom23を選択する。
【００９８】
一方、ポンプ出力制限演算部７０は、図６に示すフローに従って処理する。なお、以下では、判断結果TRUEをＴと略記するとともに、判断結果FALSEをＦと略記する。
【００９９】
複数の油圧アクチュエータ２１〜２６の作業パターンは、「走行操作」という操作パターン（１）であると判断し、その「走行操作」という作業パターンに適合するように、油圧ポンプ３の出力制限値Ｐplimitが、Ｐplimit1に設定される。
【０１００】
ポンプ出力制限演算部７０では、複数の油圧アクチュエータ２１〜２６の作業パターンに応じて、油圧ポンプ３の出力（馬力）制限値Ｐplimitが演算される。
【０１０１】
油圧ポンプ３の出力制限値として、予めＰplimit1、Ｐplimit3、Ｐplimit4、Ｐplimit5、Ｐplimit6が演算される。油圧ポンプ３の出力制限値の大きさは、図９に示すトルク線図上で示されるように、Ｐplimit1、Ｐplimit2、Ｐplimit3、Ｐplimit4、Ｐplimit5、Ｐplimit6の順番で順次小さくなるものとして設定されているものとする。
【０１０２】
すなわち、右走行パイロット圧Ｐrcrが所定の圧力Ｋcよりも大きいか、または左走行パイロット圧Ｐrclが所定の圧力Ｋcよりも大きい場合には（ステップ７１の判断Ｔ）、複数の油圧アクチュエータ２１〜２６の作業パターンは、「走行操作」という作業パターン（１）であると判断し、その「走行操作」という作業パターンに適合するように、油圧ポンプ３の出力制限値Ｐplimitが、Ｐplimit1に設定される。
【０１０３】
以下、同様にして、各ステップ７２〜７９では以下のような判断が行われる。すなわち、ステップ７２では、右旋回操作量Ｌswが所定の操作量Ｋswよりも大きく、左旋回操作量Ｌswが所定の操作量−Ｋswよりも小さいか否かが判断される。
【０１０４】
ステップ７３では、ブーム下げ操作量Ｌboが所定の操作量−Ｋboよりも小さいか否かが判断される。
【０１０５】
ステップ７４では、ブーム上げ操作量Ｌboが所定の操作量Ｋboよりも大きいか否か、または、アーム掘削操作量Ｌaが所定の操作量Ｋaよりも大きいか否か、または、アームダンプ操作量Ｌaが所定の操作量−Ｋaよりも小さいか否か、または、バケット掘削操作量Ｌbkが所定の操作量Ｋbkよりも大きいか否か、または、バケットダンプ操作量Ｌbkが所定の操作量−Ｋbkよりも小さいか否かが判断される。
【０１０６】
ステップ７５では、アーム掘削操作量Ｌaが所定の操作量Ｋaよりも大きいか否かが判断される。
【０１０７】
ステップ７６では、バケット掘削操作量Ｌbkが所定の操作量Ｋbkよりも大きいか否かが判断される。
【０１０８】
ステップ７７では、油圧ポンプ３の吐出圧ＰRpが所定の圧力Ｋp1よりも小さいか否かが判断される。
【０１０９】
ステップ７８では、アームダンプ操作量Ｌaが所定の操作量−Ｋaよりも小さいか否かが判断される。
【０１１０】
ステップ７９では、バケットダンプ操作量Ｌbkが所定の操作量−Ｋbkよりも小さいか否かが判断される。
【０１１１】
ステップ８０では、油圧ポンプ３の吐出圧ＰRpが所定の圧力Ｋp2よりも大きいか否かが判断される。
【０１１２】
ステップ８１では、油圧ポンプ３の吐出圧ＰRpが所定の圧力Ｋp3よりも大きいか否かが判断される。
【０１１３】
ステップ７１の判断がＦでステップ７２の判断がＴでステップ７３の判断がＴである場合には、複数の油圧アクチュエータ２１〜２６の作業パターンは、「旋回操作とブーム下げ操作」という作業パターン（２）であると判断し、その作業パターンに適合するように、油圧ポンプ３の出力制限値Ｐplimitが、Ｐplimit6に設定される。
【０１１４】
ステップ７１の判断がＦでステップ７２の判断がＴでステップ７３の判断がＦでステップ７４の判断がＴである場合には、複数の油圧アクチュエータ２１〜２６の作業パターンは、「旋回操作とブーム下げ以外の作業機操作」という作業パターン（３）であると判断し、その作業パターンに適合するように、油圧ポンプ３の出力制限値Ｐplimitが、Ｐplimit1に設定される。
【０１１５】
ステップ７１の判断がＦでステップ７２の判断がＴでステップ７３の判断がＦでステップ７４の判断がＦである場合には、複数の油圧アクチュエータ２１〜２６の作業パターンは、「旋回操作の単独操作」という作業パターン（４）であると判断し、その作業パターンに適合するように、油圧ポンプ３の出力制限値Ｐplimitが、Ｐplimit6に設定される。
【０１１６】
ステップ７１の判断がＦでステップ７２の判断がＦでステップ７５の判断がＴでステップ７６の判断がＴでステップ７７の判断がＴである場合には、複数の油圧アクチュエータ２１〜２６の作業パターンは、「アーム掘削操作とバケット掘削操作で負荷が小さいとき（たとえば土砂を抱え込む作業）」という作業パターン（５）であると判断し、その作業パターンに適合するように、油圧ポンプ３の出力制限値Ｐplimitが、Ｐplimit2に設定される。
【０１１７】
ステップ７１の判断がＦでステップ７２の判断がＦでステップ７５の判断がＴでステップ７６の判断がＴでステップ７７の判断がＦである場合には、複数の油圧アクチュエータ２１〜２６の作業パターンは、「アーム掘削操作とバケット掘削操作で負荷が大きいとき（たとえばアームとバケットの同時操作による掘削作業）」という作業パターン（６）であると判断し、その作業パターンに適合するように、油圧ポンプ３の出力制限値Ｐplimitが、Ｐplimit1に設定される。
【０１１８】
ステップ７１の判断がＦでステップ７２の判断がＦでステップ７５の判断がＴでステップ７６の判断がＦである場合には、複数の油圧アクチュエータ２１〜２６の作業パターンは、「アーム掘削操作」という作業パターン（７）であると判断し、その作業パターンに適合するように、油圧ポンプ３の出力制限値Ｐplimitが、Ｐplimit1に設定される。
【０１１９】
ステップ７１の判断がＦでステップ７２の判断がＦでステップ７５の判断がＦでステップ７８の判断がＴでステップ７９の判断がＴでステップ８０の判断がＴである場合には、複数の油圧アクチュエータ２１〜２６の作業パターンは、「アーム排土操作とバケット排土操作で負荷が大きいとき（たとえばアームとバケットの同時排土操作による土砂押し作業）」という作業パターン（８）であると判断し、その作業パターンに適合するように、油圧ポンプ３の出力制限値Ｐplimitが、Ｐplimit3に設定される。
【０１２０】
ステップ７１の判断がＦでステップ７２の判断がＦでステップ７５の判断がＦでステップ７８の判断がＴでステップ７９の判断がＴでステップ８０の判断がＦである場合には、複数の油圧アクチュエータ２１〜２６の作業パターンは、「アーム排土操作とバケット排土操作で負荷が小さいとき（たとえば空中でアームとバケットを同時に返す作業）」という作業パターン（９）であると判断し、その作業パターンに適合するように、油圧ポンプ３の出力制限値Ｐplimitが、Ｐplimit5に設定される。
【０１２１】
ステップ７１の判断がＦでステップ７２の判断がＦでステップ７５の判断がＦでステップ７８の判断がＴでステップ７９の判断Ｆでステップ８１の判断がＴである場合には、複数の油圧アクチュエータ２１〜２６の作業パターンは、「アーム単独排土操作で負荷が大きいとき（たとえばアーム排土作業による土砂押し作業）」という作業パターン（１０）であると判断し、その作業パターンに適合するように、油圧ポンプ３の出力制限値Ｐplimitが、Ｐplimit3に設定される。
【０１２２】
ステップ７１の判断がＦでステップ７２の判断がＦでステップ７５の判断がＦでステップ７８の判断がＴでステップ７９の判断Ｆでステップ８１の判断がＦである場合には、複数の油圧アクチュエータ２１〜２６の作業パターンは、「アーム単独排土操作で負荷が小さいとき（たとえば空中でアームを返す作業）」という作業パターン（１１）であると判断し、その作業パターンに適合するように、油圧ポンプ３の出力制限値Ｐplimitが、Ｐplimit5に設定される。
【０１２３】
ステップ７１の判断がＦでステップ７２の判断がＦでステップ７５の判断がＦでステップ７８の判断がＦである場合には、複数の油圧アクチュエータ２１〜２６の作業パターンは、「その他の作業」という作業パターン（１２）であると判断し、その作業パターンに適合するように、油圧ポンプ３の出力制限値Ｐplimitが、Ｐplimit1に設定される。
【０１２４】
一方、リリーフ時ポンプ出力制限値演算部５００には、油圧ポンプ３の吐出圧ＰRpが入力され、この油圧ポンプ３の吐出圧ＰRpに対する油圧ポンプ３の出力制限値Ｐplimitが演算される。この出力制限値Ｐplimitは、リリーフ時に急なポンプ出力の変動を起こさないように、吐出圧ＰRpに対する出力制限値Ｐplimitの関数関係５００ａをもとに出力制限値Ｐplimitを演算している。この関数関係は、コントローラ６の記憶装置に記憶される。
【０１２５】
その後、最小選択部５０１は、ポンプ出力制限値演算部７０から出力された出力制限値Ｐplimitとリリーフ時ポンプ出力制限値演算部５００から出力された出力制限値Ｐplimitとのいずれか小さい出力制限値Ｐplimitを選択出力する。
【０１２６】
つぎに、コントローラ６内の第４のエンジン目標回転数演算部６３は、最小選択部５０１によって選択された出力制限値Ｐplimitに対応する第４のエンジン目標回転数ｎcom4を演算する。
【０１２７】
コントローラ６内の記憶装置には、油圧ポンプ３の出力制限値Ｐplimitの増加に応じて第３のエンジン目標回転数ｎcom3が増加する関数関係６３ａがデータテーブル形式で記憶されている。
【０１２８】
第４のエンジン回転数演算部６３では、現在の複数の油圧アクチュエータ２１〜２６の作業パターン、つまり油圧ポンプ３の出力制限値Ｐplimitに対応する第４のエンジン目標回転数ｎcom4が関数関係６３ａにしたがって演算される。
【０１２９】
最小値選択部６５では、最大値選択部６４で選択されたエンジン目標回転数ｎcom23と、第４のエンジン目標回転数ｎcom4のうちのいずれか低い方のエンジン目標回転数ｎcomが選択される。
【０１３０】
コントローラ６は、エンジンコントローラ４に対して、エンジン回転数ｎを目標回転数ｎcomにするための回転指令値を出力し、コントローラ４は、図７に示す目標トルク線Ｌ1上でエンジン目標回転数ｎcomが得られるように燃料噴射量を増減する。
【０１３１】
ここで、図７に示すように、エンジン回転数ｎの減少に伴いポンプ吸収トルクＴpcomが小さくなる目標トルク線Ｌ1にしたがってエンジン２および油圧ポンプ３を制御すると、燃費、エンジン効率、ポンプ効率の向上が図られ、騒音が低減され、エンストが防止されるなどの効果が得られるものの、エンジン２の応答性が悪いという問題がある。たとえば掘削作業を開始しようとして操作レバー４１等を中立位置から倒してエンジン２が低回転から上昇させようとしても、レバー倒し始めの初期の段階（過渡状態）では油圧ポンプ３の負荷が急激に上昇するためにエンジン出力がポンプ吸収馬力分のパワーに対して余裕がなくエンジン２を加速するためのパワーが不足する。このためエンジン２を目標回転数まで上昇させられないか、あるいは極めて緩慢にしか上昇しないことがある。
【０１３２】
この点、この実施の形態では、現在のポンプ目標吐出流量Ｑsumに適合する第１のエンジン目標回転数ｎcom1にエンジン目標回転数加算値ｎcom_addが加算された第２のエンジン目標回転数ｎcom2を設定する一方で、現在のポンプ目標吐出流量Ｑsumが所定の流量（たとえば１０（Ｌ/ｍｉｎ））よりも大きいことが判定された場合には、エンジンローアイドル回転数ｎLよりも大きい回転数ｎM（たとえば１４００ｒｐｍ）が第３のエンジン目標回転数ｎcom3として設定される。そして、第３のエンジン目標回転数ｎcom3が、第２のエンジン目標回転数ｎcom2以上であれば、第３のエンジン目標回転数ｎcom3が得られるようにエンジン回転数が制御される。
【０１３３】
このため、たとえば掘削作業を開始しようとして操作レバー４１等を中立位置から倒した場合に、油圧ポンプ３の負荷が急激に上昇する前にエンジン回転数が予め上昇してエンジントルクが上昇するためエンジン２を加速するためのパワーに余裕が生じる。このためエンジン２を低回転域から目標回転数まで迅速に上昇させることができエンジン２の応答性が向上する。
【０１３４】
また、この実施の形態では、エンジン目標回転数加算値演算部１０４によって、第１のエンジン目標回転数ｎcom1にエンジン目標回転数加算値ｎcom_addを加算するようにしている。エンジン目標回転数加算値演算部１０４は、第２のエンジン目標回転数ｎcom2に対応する目標エンジン出力Ｐe_aimに比して現在のエンジン出力Ｐeが大きくなった場合に、その差に応じたエンジン目標回転数加算値ｎcom_addを第１のエンジン目標回転数ｎcom1に加算して、エンジン回転数を増速するようにしている。
【０１３５】
図７および図８を参照して、エンジン目標回転数加算値演算部１０４によるエンジン回転数の増速処理を説明する。なお、説明の便宜上、馬力ではなくトルク線図を用いて説明する。図７は、エンジン回転数に対するエンジントルクの変化を示すトルク線図である。このトルク線図は、図２２に示したトルク線図と同じであり、目標エンジン運転線Ｌ0が目標トルク線Ｌ1に相当する。負荷感知トルク境界線Ｌ2は、目標トルク線Ｌ1よりも所定トルク分低くした線であり、これにエンジン回転数を乗算した線が負荷感知境界線となり、目標エンジン出力演算部１０３の関数関係１０３ａとなる。負荷感知トルク境界線Ｌ2は、目標トルク線Ｌ1と負荷感知トルク線Ｌ2とによって囲まれる領域を負荷感知領域Ｅとし、この負荷感知領域Ｅの境界であることを示している。すなわち、負荷感知領域Ｅを、目標トルク線Ｌ1に、ある程度近づいた領域として定義し、この負荷感知領域Ｅに近づいた場合、建設機械が出力を要求しているとみなして、エンジン回転数を増速するようにしている。
【０１３６】
図８は、レバー入力があった場合におけるエンジン回転数とトルクの時間変化を示した図である。図７および図８において、状態「１」は、アイドル状態であり、エンジン回転数はGOV_1である。時点Ｔ１でレバー入力が開始すると、エンジン回転数は、レバー操作に応じて増速し、状態「２」となり、レバーが固定された状態の時点Ｔ２で、エンジン回転数はGOV_2となる。この状態「２」のとき、トルクは時間の経過とともに徐々に増大し、状態「２」の終わりの時点Ｔ３で、エンジン回転数およびトルクは、負荷感知トルク境界線Ｌ2を超える。すなわち、エンジン回転数は、負荷感知トルク境界線Ｌ2のエンジン回転数以下となり、トルクは、負荷感知トルク境界線Ｌ2のトルク以上となる。この負荷感知トルク境界線Ｌ2を超えて負荷感知領域Ｅに入った状態が状態「３」であり、この状態「３」のときに、エンジン目標回転数加算値演算部１０４は、エンジン目標回転数加算値ｎcom_addを第１のエンジン目標回転数ｎcom1に付加して増速を図る。この結果、状態「３」の後半には、エンジン回転数が増速され、トルクも減少し、状態「３」の終わりの時点Ｔ４で、エンジン回転数およびトルクは、負荷感知トルク境界線Ｌ2を下回り、エンジン目標回転数加算値演算部１０４による増速処理が行われなくなる。
【０１３７】
このようにして、この実施の形態では、エンジン回転数およびトルクの状態が負荷感知領域Ｅに入ったときに、出力の増大が要求されているとして、エンジン回転数を増大させている。特に、レバー操作後にかかる負荷に対して再度レバー操作を行わずに、自動的にエンジン回転数を増大させて出力増大を行うようにしているので、オペレータにかかる操作性を改善することができる。すなわち、大きな負荷がかかった場合に、自動的に出力増大を行うようにしている。
【０１３８】
また、この実施の形態では、現在のポンプ目標吐出流量Ｑsumに適合する第１のエンジン目標回転数ｎcom1にエンジン目標回転数加算値ｎcom_addが加算された第２のエンジン目標回転数ｎcom2を設定する一方で、複数の油圧アクチュエータ２１〜２６の作業パターンに応じて設定された油圧ポンプ３の出力制限値Ｐplimitと、リリーフ時の高負荷圧状態を考慮した油圧ポンプ３の吐出圧に対するのに対する出力制限値Ｐplimitとのうちの最小の出力制限値Ｐplimitが選択され、この選択された出力制限値Ｐplimitに対応する第４のエンジン目標回転数ｎcom4が設定される。第４のエンジン目標回転数ｎcom4がエンジン目標回転数ｎcom23以下であれば第４のエンジン目標回転数ｎcom4が得られるようにエンジン回転数が制御される。
【０１３９】
すなわち、この実施の形態では、リリーフ時ポンプ出力制限値演算部５００と第４のエンジン目標回転数演算部６３とによって、リリーフ状態になった場合に、ポンプ吸収トルクを制限するのではなく、エンジン回転数を下げる制御を行っている。この場合、ポンプ吸収トルクを制限する場合と同等のポンプ出力を得ることができるとともに、エンジン回転数を下げるようにしているので、ポンプ効率を下げず、エンジン効率も良くなることから省エネルギー化を達成でき、かつ騒音の改善も図ることができる。
【０１４０】
なお、この実施の形態では、ポンプ出力制限演算部７０とリリーフ時ポンプ出力制限値演算部５００との出力制限値のうちの最小値を選択した後に、第４のエンジン目標回転数を決定するようにしているが、これに限らず、ポンプ出力制限値演算部７０→最小値選択部５０１→第４のエンジン目標回転数演算部６３の処理ルートとは別に、リリーフ時ポンプ出力制限値演算部５００と第４のエンジン目標回転数演算部６３とをまとめて、吐出圧に対する第４のエンジン目標回転数に対応する第５のエンジン目標回転数を直接、演算出力して最小値選択部６５に出力するようにしてもよい。
【０１４１】
ここで、さらに図１０および図１１を参照して、建設機械１のコントローラ６によるアシスト制御処理について説明する。
【０１４２】
図１０に示すアシスト制御処理には、図２に示した最小値選択部６５で選択されたエンジン目標回転数ｎcomが入力される。
【０１４３】
なお、以下ではエンジン回転数、エンジン目標回転数をそれぞれ、発電電動機回転数、発電電動機目標回転数に変換した上で演算処理を行うようにしているが、下記の説明において発電電動機回転数、発電電動機目標回転数をそれぞれエンジン回転数、エンジン目標回転数に置換して同様の演算処理を行う実施も可能である。
【０１４４】
発電電動機目標回転数演算部９６では、現在のエンジン目標回転数ｎcomに対応する発電電動機１１の目標回転数Ｎgen_comが次式によって演算される。
【０１４５】
Ｎgen_com＝ｎcom×Ｋ2 …（４）
ただし、Ｋ2は、ＰＴＯ軸１０の減速比である。
【０１４６】
アシスト有無判定部９０では、発電電動機１１の目標回転数Ｎgen_comと、回転センサ１４で検出される発電電動機１１の現在の実回転数ＧＥＮ_spdと電圧センサ１５で検出される畜電器１２の現在の電圧BATT_voltとに基づいて、発電電動機１１によってエンジン２をアシストするか否か（アシスト有無）が判定される。
【０１４７】
アシスト有無判定部９０は、図１１に示すように、まず、偏差演算部９１で、発電電動機目標回転数Ｎgen_comと発電電動機実回転数ＧＥＮ_spdとの偏差Δgen_spdが演算される。
【０１４８】
つぎに、第１の判定部９２では、発電電動機目標回転数Ｎgen_comと発電電動機実回転数ＧＥＮ_spdとの偏差Δgen_spdが第１のしきい値ΔＧＣ１以上になった場合に、発電電動機１１を電動作用すると判定し、アシストフラグassist_flagをＴにし、発電電動機目標回転数Ｎgen_comと発電電動機実回転数ＧＥＮ_spdとの偏差Δgen_spdが第１のしきい値ΔＧＣ１よりも小さい第２のしきい値ΔＧＣ２以下になった場合に、発電電動機１１を電動作用しない（ただし、必要に応じて発電作用させて蓄電器１２に電力を蓄える）と判定し、アシストフラグをＦにする。
【０１４９】
また、発電電動機目標回転数Ｎgen_comと発電電動機実回転数ＧＥＮ_spdとの偏差Δgen_spdが第３のしきい値ΔＧＣ３以下になった場合に、発電電動機１１を発電作用すると判定し、アシストフラグassist_flagをＴにし、発電電動機目標回転数Ｎgen_comと発電電動機実回転数ＧＥＮ_spdとの偏差Δgen_spdが第３のしきい値ΔＧＣ３よりも大きい第４のしきい値ΔＧＣ４以上になった場合に、発電電動機１１を発電作用しない（ただし、必要に応じて発電作用させて蓄電器１２に電力を蓄える）と判定し、アシストフラグをＦにする。
【０１５０】
このように、回転数偏差Δgen_spdが符号プラスで、ある程度以上大きくなると、発電電動機１１を電動作用させエンジン２をアシストさせるようにしているのは、現在のエンジン回転数と目標回転数とが離れている場合にエンジン目標回転数に向けて迅速にエンジン回転数を上昇させるためである。
【０１５１】
ここで、たとえば、油圧ポンプの負荷圧が高い状態から低い状態に急に切り替わった際に、エンジンの実回転数がエンジン目標回転数に対してあらかじめ設定した値以上に上昇するまでは発電電動機のエンジントルクアシスト作用を用いて目標回転数に一致するように、エンジン回転数を制御するようにしている。すなわち、油圧ポンプの負荷圧が高い状態から低い状態に急に切り替わった場合、第４のエンジン目標回転数が高くなって実回転数との偏差が大きくなるが、この場合にエンジントルクアシスト作用が働く。
【０１５２】
なお、上述したように、油圧ポンプの負荷圧が高い状態から低い状態に減少するに応じて、第４のエンジン目標回転数が上昇することにより、エンジンの実回転数がエンジン目標回転数よりもあらかじめ設定した値よりも小さい場合、実回転数がエンジン目標回転数よりもあらかじめ設定した値よりも小さい値以上に上昇するまでは、発電電動機のエンジントルクアシスト作用を用いて前記目標回転数に一致するように、エンジン回転数が制御される。
【０１５３】
また、回転数偏差Δgen_spdが符号マイナスである程度以上大きくなると、発電電動機１１を発電作用させエンジン２を逆アシストさせるようにしているのは、エンジン回転数の減速時に発電作用させてエンジン回転数を迅速に低下させるとともにエンジン２のエネルギーを回生するためである。
【０１５４】
また第１のしきい値ΔＧＣ１と第２のしきい値ΔＧＣ２との間にヒステリシスをもたせるとともに、第３のしきい値ΔＧＣ３と第４のしきい値ΔＧＣ４との間にヒステリシスをもたせることで、制御上のハンチングを防止している。
【０１５５】
第２の判定部９３では、蓄電器１２の電圧BATT_voltが所定の範囲ＢＣ１〜ＢＣ４（ＢＣ２〜ＢＣ３）内に収まっている場合に、アシストフラグassist_flagをＴにし、所定の範囲外である場合には、アシストフラグassist_flagをＦにする。
【０１５６】
電圧値BATT_voltに、第１のしきい値ＢＣ１、第２のしきい値ＢＣ２、第３のしきい値ＢＣ３、第４のしきい値ＢＣ４を設定する。第１のしきい値ＢＣ１、第２のしきい値ＢＣ２、第３のしきい値ＢＣ３、第４のしきい値ＢＣ４の順序で大きくなるものとする。
【０１５７】
蓄電器１２の電圧値BATT_voltが第３のしきい値ＢＣ３以下になるとアシストフラグassist_flagをＴにし、蓄電器１２の電圧値BATT_voltが第４のしきい値ＢＣ４以上になるとアシストフラグassist_flagをＦにする。また、蓄電器１２の電圧値BATT_voltが第２のしきい値ＢＣ２以上になるとアシストフラグassist_flagをＴにし、蓄電器１２の電圧値BATT_voltが第１のしきい値ＢＣ１以下になるとアシストフラグassist_flagをＦにする。
【０１５８】
このように蓄電器１２の電圧BATT_voltが所定の範囲ＢＣ１〜ＢＣ４（ＢＣ２〜ＢＣ３）内に収まっているときのみに、アシストさせるようにしているのは、所定範囲外の低電圧、高電圧のときにアシストさせないようにすることで蓄電器１２に与える過充電や完全放電等の悪影響を回避するためである。
【０１５９】
また第１のしきい値ＢＣ１と第２のしきい値ＢＣ２との間にヒステリシスをもたせるとともに、第３のしきい値ＢＣ３と第４のしきい値ＢＣ４との間にヒステリシスをもたせることで、制御上のハンチングを防止している。
【０１６０】
アンド回路９４では、第１の判定部９２で得られたアシストフラグassist_flagと第２の判定部９３で得られたアシストフラグassist_flagがともにＴである場合に、最終的にアシストフラグassist_flagの内容をＴとし、それ以外である場合に、最終的にアシストフラグassist_flagの内容をＦにする。
【０１６１】
このアシスト有無判定部９０から出力されたアシストフラグassist_flagは、エンジン目標回転数加算値演算部１０４に出力され、エンジン目標回転数加算値演算部１０４は、アシストフラグassist_flagがTrueである場合、エンジン目標回転数加算値ｎcom_addの付加出力を行わないようにしている。
【０１６２】
アシストフラグ判定部９５では、アシスト有無判定部９０から出力されるアシストフラグassist_flagの内容がＴであるか否かが判定される。
【０１６３】
発電電動機指令値切り替え部８７では、アシストフラグ判定部９５の判定結果がＴであるか否か（Ｆ）に応じて、インバータ１３に与えるべき発電電動機指令値ＧＥＮ_comの内容を、目標回転数か、目標トルクかに切り替える。
【０１６４】
発電電動機１１は、インバータ１３を介して回転数制御若しくはトルク制御によって制御される。
【０１６５】
ここで、回転数制御とは、発電電動機指令値ＧＥＮ_comとして目標回転数を与えて目標回転数が得られるように発電電動機１１の回転数を調整する制御のことである。また、トルク制御とは、発電電動機指令値ＧＥＮ_comとして目標トルクを与えて目標トルクが得られるように発電電動機１１のトルクを調整する制御のことである。
【０１６６】
モジュレーション処理部９７では、発電電動機１１の目標回転数が演算され出力される。また、発電電動機トルク演算部６８では、発電電動機１１の目標トルクが演算され出力される。
【０１６７】
すなわち、モジュレーション処理部９７は、発電電動機目標回転数演算部９６で得られた発電電動機目標回転数Ｎgen_comに対して、特性９７ａにしたがいモジュレーション処理が施された回転数Ｎgen_comを出力する。発電電動機目標回転数演算部９６より入力された発電電動機目標回転数Ｎgen_comをそのまま出力するのではなくて、時間ｔをかけて徐々に回転数を増大させて、発電電動機目標回転数演算部９６より入力された発電電動機目標回転数Ｎgen_comに到達させる。
【０１６８】
図１２〜図１５に示したトルク線図を参照してモジュレーション処理を行わなかった場合に対してモジュレーション処理を行った場合の効果について説明する。
【０１６９】
図１２は、エンジン加速時にモジュレーション処理無しの場合のガバナの動きを説明する図であり、図１３は、エンジン加速時にモジュレーション処理有りの場合のガバナの動きを説明する図である。図１４は、エンジン減速時にモジュレーション処理無しの場合のガバナの動きを説明する図であり、図１５は、エンジン減速時にモジュレーション処理有りの場合のガバナの動きを説明する図である。ガバナとしてメカガバナを使用すると、実際のエンジン回転数よりもガバナが指定する回転数が遅れるという問題がある。
【０１７０】
図１２および図１３に示すように、油圧ポンプ３の負荷が大きいときに低回転のマッチング点Ｐ0から高回転側にエンジン２を加速させる場合を考える。図１２および図１３において、Ｐ2はエンジントルクに対応し、エンジントルクにアシスト分のトルクを加えたものが、エンジン２と発電電動機１１を合わせた全トルクＰ3となる。Ｐ1はポンプ吸収トルクに対応し、ポンプ吸収トルクに加速トルクを合わせたものが全トルクＰ3に対応している。
【０１７１】
図１２に示すようにモジュレーション処理無しの場合には、エンジン目標回転数とエンジン実回転数との偏差に応じたアシストトルクが発生する。偏差が大きい場合には、その大きな偏差に対応して、発電電動機１１によるアシストトルクが大きくなる。このためガバナの動きよりもエンジン２が早く加速して、ガバナが指定する回転数よりも実回転数の方が大きくなる。エンジン２が早く加速するとガバナの調整により燃料噴射量が減りエンジントルクが減少する。このためエンジン２を発電電動機１１によってアシストしているにもかかわらずエンジン２がフリクションとなってしまい、エンジン２の加速度が上がらないことになる。このため燃料噴射量を減らしながら、エンジントルクを減少させながら、エンジン２がロスとなってエンジン２が加速することなり、エネルギーロスを招くとともに、エンジン２が十分に加速しないという結果を招く。
【０１７２】
これに対して図１３に示すようにモジュレーション処理有りの場合には、エンジン目標回転数にモジュレーション処理が施されて、エンジン目標回転数とエンジン実回転数との偏差が小さくなり、これに応じて、発電電動機１１で小さいアシストトルクが発生する。このためガバナの動きがエンジン２の加速に追従し、ガバナが指定する回転数が実回転数に一致する。このためエネルギーロスが低減され、エンジン２が十分に加速する。
【０１７３】
つぎにエンジン２を減速させる場合について説明する。図１４および図１５に示すように、油圧ポンプ３の負荷が大きいときに高回転のマッチング点Ｐ0から低回転側にエンジン２を減速させる場合を考える。
【０１７４】
図１４および図１５において、Ｐ2はエンジントルクに対応し、エンジントルクに回生トルクを加えたものが、エンジン２と発電電動機１１を合わせた全トルクＰ3となる。Ｐ1はポンプ吸収トルクに対応し、ポンプ吸収トルクに減速トルクを合わせたものが全トルクＰ3に対応している。
【０１７５】
図１４に示すようにモジュレーション処理無しの場合には、エンジン目標回転数とエンジン実回転数との偏差に応じた回生トルクが発生する。偏差が大きい場合には、その大きな偏差に対応して、発電電動機１１による回生トルクが大きくなる。このためガバナの動きよりもエンジン２が早く減速して、ガバナが指定する回転数よりも実回転数の方が小さくなる。エンジン２が早く減速するとガバナの調整により燃料噴射量が増加しエンジントルクが増大する。このためエンジン２はトルクを増加させつつ発電電動機１１で発電しながらエンジン２が減速することになる。この結果、エンジン２がトルクを上げつつ、発電電動機１１によって、増加するエンジンエネルギーを回収しながら、エンジン２が減速することになり、無駄な発電が行われ、燃料を無駄に消費することになる。
【０１７６】
これに対して図１５に示すようにモジュレーション処理有りの場合には、エンジン目標回転数にモジュレーション処理が施されて、エンジン目標回転数とエンジン実回転数との偏差が小さくなり、これに応じて、発電電動機１１で小さい回生トルクが発生する。このためガバナの動きがエンジン２の減速に追従し、ガバナが指定する回転数が実回転数に一致する。このためエンジン２のトルクが負になり、発電電動機１１によってエンジン２の速度エネルギーを回収しながらエンジン２が減速する。このため無駄なエネルギー消費を招くことなく効率よくエンジン２を減速させることができる。
【０１７７】
発電電動機トルク演算部６８では、電圧センサ１５で検出される畜電器１２の現在の電圧BATT_voltに基づいて、電圧BATT_voltに対応する目標トルクＴgen_comが演算される。
【０１７８】
記憶装置には、蓄電器１２の電圧BATT_voltの上昇６８ｂに応じて目標トルクＴgen_comが減少し、蓄電器１２の電圧BATT_voltの下降６８ｃに応じて目標トルクＴgen_comが増加するというヒステリシスをもたせた関数関係６８ａがデータテーブル形式で記憶されている。この関数関係６８ａは、発電電動機１１の発電量を調整することで蓄電器１２の電圧値を所望の範囲内に維持するために設定されている。
【０１７９】
発電電動機トルク演算部６８では、蓄電器１２の現在の電圧BATT_voltに対応する目標トルクＴgencomが関数関係６８ａにしたがい出力される。
【０１８０】
アシストフラグ判定部９５でアシストフラグassit_flagの内容がＴであると判定されると、発電電動機指令値切り替え部８７が、モジュレーション処理部９７側に切り替えられ、モジュレーション処理部９７から出力される発電電動機目標回転数Ｎgen_comが発電電動機指令値ＧＥＮ_comとしてインバータ１３に出力されて、発電電動機１１が回転数制御され、発電電動機１１が電動作用若しくは発電作用をする。
【０１８１】
また、アシストフラグ判定部９５でアシストフラグassit_flagの内容がＦであると判定されると、発電電動機指令値切り替え部８７が、発電電動機トルク演算部６８側に切り替えられ、発電電動機トルク演算部６８から出力される発電電動機目標トルクＴgen_comが発電電動機指令値ＧＥＮ_comとしてインバータ１３に出力されて、発電電動機１１がトルク制御され、発電電動機１１が発電作用をする。
【０１８２】
ポンプ吸収トルク指令値切り替え部８８では、アシストフラグ判定部９５の判定結果がＴであるか否か（Ｆ）に応じて、制御電流演算部６７に与えるべきポンプ目標吸収トルクＴの内容を、第１のポンプ目標吸収トルクＴp_com1か、第２のポンプ目標吸収トルクＴp_com2かに切り替える。
【０１８３】
第１のポンプ目標吸収トルクＴp_com1は、第１のポンプ目標吸収トルク演算部６６で演算される。
【０１８４】
すなわち、第１のポンプ目標吸収トルクＴpcom1は、図１８のトルク線図における第１の目標トルク線Ｌ1上のトルク値として与えられる。第１の目標トルク線Ｌ1は、エンジン目標回転数ｎが低下するに応じて油圧ポンプ３の目標吸収トルクＴp_com1が小さくなるような目標トルク線として設定されている。
【０１８５】
第２のポンプ目標吸収トルクＴpcom2は、第２のポンプ目標吸収トルク演算部８５で演算される。すなわち、第２のポンプ目標吸収トルクＴp_com2は、図１８のトルク線図における第１の目標トルク線Ｌ1に対して、低回転領域でポンプ目標吸収トルクが大きくなる第２の目標トルク線Ｌ12上のトルク値として与えられる。
【０１８６】
第１のポンプ目標吸収トルク演算部６６では、エンジン目標回転数ｎcomに対応する油圧ポンプ３の第１のポンプ目標吸収トルクＴpcom1が演算される。
【０１８７】
記憶装置には、エンジン目標回転数ｎ_comの増加に応じて油圧ポンプ３の第１の目標吸収トルクＴp_com1が増加する関数関係６６ａがデータテーブル形式で記憶されている。この関数６６ａは、図１６に示すトルク線図上の第１の目標トルク線Ｌ1に対応するカーブである。
【０１８８】
図１６は、エンジン２のトルク線図を示しており横軸にエンジン回転数ｎ（ｒｐｍ；ｒｅｖ/ｍｉｎ）をとり縦軸にトルクＴ（Ｎ・ｍ）をとっている。関数６６ａは、図１６に示すトルク線図上の目標トルク線Ｌ1に対応している。
【０１８９】
第１のポンプ目標吸収トルク演算部６６では、現在のエンジン目標回転数ｎ_comに対応する第１のポンプ目標吸収トルクＴp_com1が関数関係６６ａにしたがい演算される。
【０１９０】
第２のポンプ目標吸収トルク演算部８５では、発電電動機回転数ＧＥＮ_spd（エンジン実回転数）に対応する油圧ポンプ３の第２のポンプ目標吸収トルクＴp_com2が演算される。
【０１９１】
記憶装置には、発電電動機回転数ＧＥＮ_spd（エンジン実回転数）に応じて油圧ポンプ３の第２の目標吸収トルクＴp_com2が変化する関数関係８５ａがデータテーブル形式で記憶されている。この関数８５ａは、図１６に示すトルク線図上の第２の目標トルク線Ｌ12に対応するカーブであり、第１の目標トルク線Ｌ1に対して、低回転領域でポンプ目標吸収トルクが大きくなるような特性を有している。たとえば第２の目標トルク線Ｌ12は、等馬力線に相当するカーブであり、エンジン回転数の上昇に応じてトルクが低下するように特性を採用することができる。
【０１９２】
第２のポンプ目標吸収トルク演算部８５では、現在の発電電動機回転数ＧＥＮ_spd（エンジン実回転数）に対応する第２のポンプ目標吸収トルクＴp_com2が関数関係８５ａにしたがい演算される。
【０１９３】
アシストフラグ判定部９５でアシストフラグassit_flagの内容がＴであると判定されると、ポンプ吸収トルク指令値切り替え部８８が、第２のポンプ目標吸収トルク演算部８５側に切り替えられ、第２のポンプ目標吸収トルク演算部８５から出力される第２のポンプ目標吸収トルクＴp_com2がポンプ目標吸収トルクＴp_comとして、後段のフィルタ処理部８９に出力される。
【０１９４】
また、アシストフラグ判定部９５でアシストフラグassit_flagの内容がＦであると判定されると、ポンプ吸収トルク指令値切り替え部８８が、第１のポンプ目標吸収トルク演算部６６側に切り替えられ、第１のポンプ目標吸収トルク演算部６６から出力される第１のポンプ目標吸収トルクＴp_com1がポンプ目標吸収トルクＴp_comとして、後段のフィルタ処理部８９に出力される。
【０１９５】
以上のようにしてポンプ吸収トルク指令値切り替え部８８では、油圧ポンプ３の目標吸収トルクＴp_com1、Ｔp_com2、つまり図１６の目標トルク線Ｌ1、Ｌ12の選択が切り替えられる。
【０１９６】
フィルタ処理部８９では、目標トルク線Ｌ1、Ｌ12の選択が切り替えられた場合に、切り替え前の目標トルク線（たとえば第２の目標トルク線Ｌ12）上のポンプ目標吸収トルク（第２のポンプ目標吸収トルクＴp_com2）から、切り替え後の目標トルク線（第１の目標トルク線Ｌ1）上のポンプ目標吸収トルク（第２のポンプ目標吸収トルクＴp_com1）へ、徐々に変化させるフィルタ処理が行われる。
【０１９７】
すなわち、フィルタ処理部８９は、目標トルク線Ｌ1、Ｌ12の選択が切り替えられた場合に、特性８９ａにしたがいフィルタ処理が施された目標トルク値Ｔp_comを出力する。目標トルク線Ｌ1、Ｌ12の選択が切り替えられた場合に、切り替え前の目標トルク線（たとえば第２の目標トルク線Ｌ12）上のポンプ目標吸収トルク（第２のポンプ目標吸収トルクＴp_com2）から、切り替え後の目標トルク線（第１の目標トルク線Ｌ1）上のポンプ目標吸収トルク（第２のポンプ目標吸収トルクＴp_com1）へとそのまま切り替え出力するのではなくて、時間ｔをかけて徐々に切り替え前の目標トルク線（第２の目標トルク線Ｌ12）上のポンプ目標吸収トルク（第２のポンプ目標吸収トルクＴp_com2）から、切り替え後の目標トルク線（第１の目標トルク線Ｌ1）上のポンプ目標吸収トルク（第２のポンプ目標吸収トルクＴp_com1）へと滑らかに到達させる。
【０１９８】
図１６を用いて説明すると、第２の目標トルク線Ｌ12上の点Ｇにおける第２のポンプ目標吸収トルクＴp_com2から、第１の目標トルク線Ｌ1上の点Ｈにおける第１のポンプ目標吸収トルクＴp_com1に向けて徐々に時間をかけて変化する。
【０１９９】
これによりトルクが急激に変化することでオペレータや車体に与えるショックを抑制するとともに、操作感覚上の違和感をなくすことができる。
【０２００】
フィルタ処理は、アシストフラグ判定部９５の判定結果がＴからＦに切り替わった場合、同判定結果がＦからＴに切り替わった場合の両方の場合に行うようにしてもよく、どちらか一方の切り替えが行われたときのみフィルタ処理を行うようにしてもよい。特に、アシストフラグ判定部９５の判定結果がＴからＦに切り替わり第２の目標トルク線Ｌ12から第１の目標トルク線Ｌ1に切り替わる場合に、フィルタ処理を行わないものとするとトルクが急激に低下してオペレータに大きな操作感覚の違和感を与えることが多い。このため、判定結果がＴからＦに切り替わり第２の目標トルク線Ｌ12から第１の目標トルク線Ｌ1に切り替わる場合にはフィルタ処理を施すことが望ましい。
【０２０１】
フィルタ処理部８９から出力されたポンプ目標吸収トルクＴp_comは、制御電流演算部６７に与えられる。制御電流演算部６７では、ポンプ目標吸収トルクＴp_comに対応する制御電流pc-epcが演算される。
【０２０２】
記憶装置には、ポンプ目標吸収トルクＴp_comの増加に応じて制御電流pc-epcが増加する関数関係６７ａがデータテーブル形式で記憶されている。
【０２０３】
制御電流演算部６７では、現在のポンプ目標吸収トルクＴp_comに対応する制御電流pc-epcが関数関係６７ａにしたがい演算される。
【０２０４】
コントローラ６からポンプ制御バルブ５に対して制御電流pc-epcが出力されてサーボピストンを介してポンプ制御バルブ５を変化させる。ポンプ制御バルブ５は、油圧ポンプ３の吐出圧ＰRp（ｋｇ/ｃｍ2）と油圧ポンプ３の容量ｑ（ｃｃ/ｒｅｖ）の積が制御電流pc-epcに対応するポンプ吸収トルクＴp_comを超えないように、油圧ポンプ３の斜板の傾転角をＰＣ制御する。
【０２０５】
この実施の形態によれば、図１６に示すように、エンジン目標回転数が低下するに応じて油圧ポンプ３の目標吸収トルクが小さくなる第１の目標トルク線Ｌ1が設定される。また、第１の目標トルク線Ｌ1に対して、低回転領域でポンプ目標吸収トルクが大きくなる第２の目標トルク線Ｌ12が設定される。
【０２０６】
そして、エンジン目標回転数に一致するように、エンジン回転数が制御される。たとえば各操作レバー４１〜４４の操作量から油圧ポンプ３の負荷が小さいと判断されるときには、エンジン目標回転数が低い回転数ｎDに設定され、各操作レバー４１〜４４の操作量から油圧ポンプ３の負荷が大きいと判断されるときには、エンジン目標回転数が高い回転数ｎEに設定される。
【０２０７】
そして、エンジン目標回転数とエンジン２の実際の回転数との偏差が所定のしきい値以上になっているか否かが、つまり発電電動機１１によってエンジン２をアシストすべきか否かが判定される。
【０２０８】
エンジン目標回転数とエンジン２の実際の回転数との偏差が所定のしきい値以上になっていない場合には、第１の目標トルク線Ｌ1が選択され、エンジン目標回転数に対応する第１の目標トルク線Ｌ1上のポンプ目標吸収トルクが得られるように、油圧ポンプ３の容量が制御される。
【０２０９】
このためエンジン目標回転数が低回転ｎDに設定されているときには、ガバナは、エンジン目標回転数ｎDに対応するレギュレーションラインＦeD上において、第１の目標トルク線Ｌ1と交差する点Ｄを上限トルク値として、エンジン２と油圧ポンプ吸収トルクがつりあうように燃料噴射量を増減する。静的には第１の目標トルク線Ｌ1上の点Ｄでマッチングする。
【０２１０】
またエンジン目標回転数が高回転ｎEに設定されているときには、ガバナは、エンジン目標回転数ｎEに対応するレギュレーションラインＦeE上において、第１の目標トルク線Ｌ1と交差する点Ｅを上限トルク値として、エンジン２と油圧ポンプ吸収トルクがつりあうように燃料噴射量を増減する。静的には第１の目標トルク線Ｌ1上の点Ｅでマッチングする。
【０２１１】
このため発電電動機１１によるアシストが行われていないときには、比較例と同様に、エンジン２は目標トルク線Ｌ1に沿って制御されるため、燃費向上、ポンプ効率およびエンジン効率の向上、騒音低減、エンスト防止等の効果が得られる。
【０２１２】
エンジン目標回転数とエンジン３の実際の回転数との偏差が所定のしきい値以上になっている場合には、発電電動機１１が電動作用される。発電電動機１１が電動作用された結果、図１６に破線で示すトルク分がエンジントルクに加算される。
【０２１３】
また、同しきい値以上になっている場合には、第２の目標トルク線Ｌ12が選択され、エンジン回転数に対応する第２の目標トルク線Ｌ12上のポンプ目標吸収トルクが得られるように、油圧ポンプ３の容量が制御される。
【０２１４】
ここで、たとえば掘削作業を開始すべく操作レバー４１等を中立位置から倒した場合を考える。この場合、エンジン回転数を低回転から高回転の高負荷のマッチング点Ｅまで上昇させる必要がある。
【０２１５】
アシスト制御を行わない場合には、図１７の経路ＬＮ１に沿ってエンジン２が加速する。掘削作業開始の初期の段階では、エンジン回転を上昇（過渡時）させながら作業機等を作動させる必要がある。発電電動機２によるアシストや第２の目標トルク線Ｌ12への移行がない場合、エンジン回転上昇時の初期の段階で、油圧ポンプ３の吸収トルクが小さくなってしまう。このため操作レバーの動きに対して作業機の動きだしが遅くなり、作業効率の低下を招くとともに、オペレータに操作感覚の違和感を与える。
【０２１６】
この実施の形態では、発電電動機１１によるアシストを加えているので、経路ＬＮ２に沿ってエンジン２が加速する。この場合、発電電動機２によるアシストがあるため、エンジン回転上昇時の初期の段階で、油圧ポンプ３の吸収トルクが大きくなる。このため操作レバーの動きに対して作業機の動きだしが早くなり、作業効率の低下を抑制でき、オペレータに与える操作感覚の違和感を軽減できる。
【０２１７】
実施の形態の場合には、図１８の経路ＬＮ３に沿ってエンジン２が加速する。実施の形態によれば、低回転から第２の目標トルク線Ｌ12上の点Ｆを経てＥ点に到達する。すなわち操作レバー４１等を倒した直後に即座に油圧ポンプ吸収トルクが高トルクとなる点Ｆに達するため、操作レバーの動きに対して作業機の動きだしが早くなる。このためエンジン２を加速させつつ作業機を、操作レバーの動きに遅れなく、瞬時に力強く動かすことができる。これにより作業効率が向上し、オペレータに操作感覚の違和感を与えることがない。なお、仮に、発電電動機１１によるアシストなくして（図１８に示す斜線部分なくして）、第２の目標トルク線Ｌ12に移行させようとすると、エンジン２に過負荷がかかるおそれがある。この実施の形態では、発電電動機１１によるアシストを前提として、第２の目標トルク線Ｌ12への移行を保証している。
【０２１８】
特に、リリーフ時の高負荷圧状態においてエンジン回転数を下げるようにしているので、エンジン目標回転数と実エンジン回転数との偏差が大きくなり、リリーフ解放状態に移行した直後、エンジン目標回転数は、上昇するが、実エンジン回転数は低い状態のままとなり、実エンジン回転数がエンジン目標回転数に移行するまで時間がかかる。この実施の形態では、この大きな偏差が生じた場合にアシスト制御を行うようにしているので、迅速に実エンジン回転数をエンジン目標回転数に復帰させることができ、作業量の低下をほとんど感じることなく、作業を行うことができる。
【０２１９】
この実施の形態では、エンジン効率、ポンプ効率等の向上を図りつつ、オペレータの意思通りに応答性よく作業機等を作動させることができる。
【０２２０】
なお、この実施の形態は、図２１に示した建設機械のように、発電機／モータおよび蓄電器をもたず、アシスト作用を有しない建設機械にも適用できる。図１９は、この発明の実施の形態の変形例にかかる建設機械の概要構成を示すブロック図である。また、図２０は、図１９に示したコントローラの制御フローを示す図である。この建設機械は、発電機／モータおよび蓄電器をもたず、これらに関する制御以外は、図２に示したコントローラと同じ制御フローを行う。
【０２２１】
なお、この建設機械では、図２０に示したポンプ吸収トルク演算部６６が、エンジン目標回転数ｎ_comに対応する油圧ポンプ３の目標吸収トルクＴp_comを演算する。
【０２２２】
コントローラ６内の記憶装置には、エンジン目標回転数ｎ_comの増加に応じて油圧ポンプ３の目標吸収トルクＴp_comが増加する関数関係６６ａがデータテーブル形式で記憶されている。この関数６６ａは、図７に示すトルク線図上の目標トルク線Ｌ1に対応するカーブである。
【０２２３】
図７は、図２２と同様にエンジン２のトルク線図を示しており、横軸にエンジン回転数ｎ（ｒｐｍ；ｒｅｖ/ｍｉｎ）をとり、縦軸にトルクＴ（Ｎ・ｍ）をとっている。関数６６ａは、図７に示すトルク線図上の目標トルク線Ｌ1に対応している。
【０２２４】
ポンプ吸収トルク演算部６６では、現在のエンジン目標回転数ｎ_comに対応する油圧ポンプ３の目標吸収トルクＴp_comが、関数６６ａにしたがって演算される。
【０２２５】
制御電流演算部６７では、ポンプ目標吸収トルクＴp_comに対応する制御電流pc-epcが演算される。
【０２２６】
コントローラ６内の記憶装置には、ポンプ目標吸収トルクＴp_comの増加に応じて制御電流pc-epcが増加する関数関係６７ａがデータテーブル形式で記憶されている。
【０２２７】
制御電流演算部６７では、現在のポンプ目標吸収トルクＴp_comに対応する制御電流pc-epcが関数関係６７ａにしたがって演算される。
【０２２８】
コントローラ６からポンプ制御バルブ５に対して制御電流pc-epcが出力されてサーボピストンを介してポンプ制御バルブ５を変化させる。ポンプ制御バルブ５は、油圧ポンプ３の吐出圧ＰRp（ｋｇ/ｃｍ2）と油圧ポンプ３の容量ｑ（ｃｃ/ｒｅｖ）の積が制御電流pc-epcに対応するポンプ吸収トルクＴp_comを超えないように、油圧ポンプ３の斜板の傾転角をＰＣ制御する。
【０２２９】
なお、この実施の形態は、建設機械１の上部旋回体を電動アクチュエータで旋回作動させる電動旋回システムを搭載した建設機械にも適用できる。
【０２３０】
なお、上述した実施の形態において、操作手段４１〜４４が非操作の状態から操作状態に切り替わったことの判定は、これに限定されるわけではなく、操作手段４１〜４４の操作量が所定のしきい値よりも大きい場合に、操作手段４１〜４４が非操作の状態から操作状態に切り替わったものと判定してもよい。
【符号の説明】
【０２３１】
１  建設機械
２  エンジン
３  油圧ポンプ
４  エンジンコントローラ
５  ポンプ制御バルブ
６  コントローラ
７〜９  油圧センサ
１０  ＰＴＯ軸
１１  発電電動機
１２  蓄電器
３１〜３６  油圧アクチュエータ
４１，４２  操作レバー
４３，４４  走行レバー
５０  目標流量演算部
６１  第１のエンジン目標回転数演算部
６３  第４のエンジン目標回転数演算部
６４  最大値選択部
６５，５０１  最小値選択部
７０  ポンプ出力制限演算部
１０１  フィルタ
１０２  エンジン出力演算部
１０３  目標エンジン出力演算部
１０４  エンジン目標回転数加算値演算部
１０５  加算部
１０６  分岐部
５００  リリーフ時ポンプ出力制限値演算部
【図１】
0005250145.tif 000002
【図２】
0005250145.tif 000003
【図３】
0005250145.tif 000004
【図４】
0005250145.tif 000005
【図５】
0005250145.tif 000006
【図６】
0005250145.tif 000007
【図７】
0005250145.tif 000008
【図８】
0005250145.tif 000009
【図９】
0005250145.tif 000010
【図１０】
0005250145.tif 000011
【図１１】
0005250145.tif 000012
【図１２】
0005250145.tif 000013
【図１３】
0005250145.tif 000014
【図１４】
0005250145.tif 000015
【図１５】
0005250145.tif 000016
【図１６】
0005250145.tif 000017
【図１７】
0005250145.tif 000018
【図１８】
0005250145.tif 000019
【図１９】
0005250145.tif 000020
【図２０】
0005250145.tif 000021
【図２１】
0005250145.tif 000022
【図２２】
0005250145.tif 000023