(57)【特許請求の範囲】
【請求項１】
作業機械の運転状態を検出する検出手段と、
前記運転状態をもとに、作業機械の負荷が抜けた場合に最大限上げられるエンジンの回転数である無負荷最大回転数を演算する無負荷最大回転数演算手段と、
前記運転状態をもとに、負荷が加わった場合に上げられるエンジンの回転数である目標マッチング回転数を前記無負荷最大回転数とは別に演算する目標マッチング回転数演算手段と、
前記運転状態をもとに、最大限出力することができるエンジン出力指令値曲線として規定されるエンジン目標出力を演算するエンジン目標出力演算手段と、
前記エンジン目標出力の制限下で、前記無負荷最大回転数と前記目標マッチング回転数との間でエンジン回転数を可変制御し、前記作業機械の負荷状態に応じて、エンジン回転数変化に伴い前記エンジン出力指令値曲線に沿ってエンジン出力を制御するエンジン制御手段と、
を備えたことを特徴とする作業機械のエンジン制御装置。
【請求項２】
予めエンジン回転数の変動幅を設定する変動幅設定手段と、
前記無負荷最大回転数から前記変動幅分の回転数下げたエンジンの回転数を最小回転数制限値とし、前記運転状態をもとに、負荷が加わった場合に最低限上げなければならないエンジンの回転数であるマッチング最小回転数を演算するマッチング最小回転数演算手段と、
を備え、
前記エンジン制御手段は、前記エンジン目標出力の制限下で、前記無負荷最大回転数と前記マッチング最小回転数との間でエンジン回転数を可変制御し、前記作業機械の負荷状態に応じて、エンジン回転数変化に伴い前記エンジン出力指令値曲線に沿ってエンジン出力を制御することを特徴とする請求項１に記載の作業機械のエンジン制御装置。
【請求項３】
前記エンジン制御手段は、前記目標マッチング回転数に下限回転数オフセット値を加えたエンジン回転数をエンジン回転数指令値として出力することを特徴とする請求項１または２に記載の作業機械のエンジン制御装置。
【請求項４】
可変容量型油圧ポンプと、
前記可変容量型油圧ポンプのポンプ容量を検出する容量検出手段と、
を備え、
前記エンジン制御手段は、前記ポンプ容量が閾値以上である場合、エンジン回転数を上げ、ポンプ容量が閾値未満の場合、エンジン回転数を下げたエンジン回転数指令値を出力することを特徴とする請求項１〜３のいずれか一つに記載の作業機械のエンジン制御装置。
【請求項５】
前記マッチング最小回転数演算手段は、前記作業機械の旋回体の回転数を検出する回転数検出手段による検出値がゼロに近い場合にはマッチング最小回転数を上げ、前記回転数検出手段による検出値が大きくなるに従ってマッチング最小回転数を下げた値を最小回転数制限値とし、前記運転状態をもとに、作業機械に負荷が加わった場合に最低限上げなければならないエンジンの回転数であるマッチング最小回転数を演算することを特徴とする請求項２に記載の作業機械のエンジン制御装置。
【請求項６】
作業機械の運転状態を検出する検出ステップと、
前記運転状態をもとに、作業機械の負荷が抜けた場合に最大限上げられるエンジンの回転数である無負荷最大回転数を演算する無負荷最大回転数演算ステップと、
前記運転状態をもとに、作業機械に負荷が加わった場合に上げられるエンジンの回転数である目標マッチング回転数を前記無負荷最大回転数とは別に演算する目標マッチング回転数演算ステップと、
前記運転状態をもとに、最大限出力することができるエンジン出力指令値曲線として規定されるエンジン目標出力を演算するエンジン目標出力演算ステップと、
前記エンジン目標出力の制限下で、前記無負荷最大回転数と前記目標マッチング回転数との間でエンジン回転数を可変制御し、前記作業機械の負荷状態に応じて、エンジン回転数変化に伴い前記エンジン出力指令値曲線に沿ってエンジン出力を制御するエンジン制御ステップと、
を含むことを特徴とする作業機械のエンジン制御方法。
【請求項７】
予めエンジン回転数の変動幅を設定する変動幅設定ステップと、
前記無負荷最大回転数から前記変動幅分の回転数下げたエンジンの回転数を最小回転数制限値とし、前記運転状態をもとに、作業機械に負荷が加わった場合に最低限上げなければならないエンジンの回転数であるマッチング最小回転数を演算するマッチング最小回転数演算ステップと、
を含み、
前記エンジン制御ステップは、前記エンジン目標出力の制限下で、前記無負荷最大回転数と前記マッチング最小回転数との間でエンジン回転数を可変制御し、前記作業機械の負荷状態に応じて、エンジン回転数変化に伴い前記エンジン出力指令値曲線に沿ってエンジン出力を制御することを特徴とする請求項６に記載の作業機械のエンジン制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、油圧ショベル、ブルドーザ、ダンプトラック、ホイールローダなどの建設機械を含む作業機械のエンジン制御装置およびそのエンジン制御方法に関するものである。
【背景技術】
【０００２】
作業機械に用いられるディーゼルエンジン（以下、エンジン）のエンジン制御において、作業機械のオペレータが、運転室内に設けられた燃料調整ダイヤル（スロットルダイヤル）を任意に設定すると、エンジンコントローラは、燃料噴射システムに対し、設定に応じた燃料噴射量をエンジンに噴射するための制御信号を出力する。そして、エンジンコントローラは、燃料調整ダイヤル（スロットルダイヤル）で設定されたエンジン目標回転数が維持されるように、作業機械に取り付けられた作業機の負荷変動に対応した制御信号を燃料噴射システムに出力し、エンジン回転数を調整する。また、エンジンコントローラあるいはポンプコントローラは、エンジン目標回転数に応じた油圧ポンプの目標吸収トルクを算出する。この目標吸収トルクは、エンジンの出力馬力と油圧ポンプの吸収馬力とが釣り合うように設定される。
【０００３】
通常のエンジン制御について、図２７を用いて説明する。エンジンは、エンジンの最大出力トルク線Ｐ１と最大のエンジン回転数から引かれるエンジンドループ線Ｆｅから成り立つ、エンジン出力トルク線ＴＬを超えないように制御される。そして、エンジンコントローラは、たとえば作業機械が油圧ショベルなどの場合、上部旋回体の旋回動作や作業機動作のために操作される操作レバーの操作量と作業機等の負荷とに応じてエンジン回転数を変化させるための制御信号を生成する。たとえば、エンジン目標回転数がＮ２に設定されている状態で土砂等の掘削操作が行われると、エンジンがアイドリング動作している時のエンジン回転数（アイドリング回転数Ｎ１）からエンジン目標回転数Ｎ２に移行する。この際、燃料噴射システムは、エンジンコントローラからの制御信号を受けて、この移行に応じて燃料をエンジンに噴射し、作業機動作等が行われて負荷が増加すると、エンジン回転数とエンジン出力トルクとが、可変容量型油圧ポンプ（典型的には斜板式油圧ポンプ）のポンプ吸収トルク線ＰＬとエンジン出力トルク線ＴＬの交点に相当する、マッチング点Ｍ１に到達するように、エンジン回転数が移行する。なお、定格点Ｐでは、エンジン出力は最大となる。
【０００４】
ここで、エンジンの燃費効率および油圧ポンプのポンプ効率を改善するため、図２８に示すように、燃料消費率の良い領域を通る目標エンジン運転線（目標マッチングルート）ＭＬを設け、この目標マッチングルートＭＬ上にエンジン出力とポンプ吸収トルクとのマッチング点を設けるようにするエンジン制御装置がある。図２８において、曲線Ｍは、エンジンの等燃費曲線を示し、曲線Ｍの中心（目玉（Ｍ１））に行くほど燃料消費率に優れる。また、曲線Ｊは、油圧ポンプで吸収される馬力が等馬力になっている等馬力曲線を示している。したがって、同じ馬力を得る場合、エンジンドループ線Ｆｅ上のマッチング点ｐｔ１でマッチングさせるよりも、目標マッチングルートＭＬ上のマッチング点ｐｔ２でマッチングさせる方が、燃料消費率は優れる。また、油圧ポンプの流量Ｑは、エンジン回転数ｎとポンプ容量ｑとの積（Ｑ＝ｎ・ｑ）であり、同じ作動油流量を得るなら、エンジン回転数を低くしてポンプ容量を大きくする方がポンプ効率に優れることになる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００７−１２０４２６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上述した目標マッチングルートＭＬを用いてエンジン制御を行う場合、図２９のトルク線図に示すように、たとえば、目標マッチングルートＭＬ上の目標マッチング回転数ｎ１でのマッチング点Ｍ１でマッチングさせるようとすると、無負荷時のエンジン回転数は、マッチング点Ｍ１を通るドループ線ＤＬ１に拘束された低回転数ｎ２（例えば、１１００ｒｐｍ近傍）のところに定められる。そして、負荷がかかるとドループ線ＤＬ１に沿ってエンジントルクが増加してマッチング点Ｍ１でマッチングする。すなわち、目標マッチングルートＭＬ上でエンジン出力とポンプ吸収トルクとをマッチングさせようとすると、エンジン出力（目標マッチング点Ｍ１）とエンジン回転数（無負荷時のエンジン回転数ｎ２）とがドループ線ＤＬ１によって連動して決まる。
【０００７】
ここで、作業機械によって大きな岩を動かすなどの作業時に、作業機に負荷がかかった場合、図２９に示すドループ線ＤＬ１に沿ってエンジントルクが上昇してマッチング点Ｍ１に移行する。ここで、作業機出力が得られて、作業には好都合であるが、大きな岩を動かし終えて負荷が抜けた直後でも、エンジンは、ドループ線ＤＬ１に拘束された低回転のエンジン回転数で駆動する。この低回転数で油圧ポンプが回転し、油圧ポンプの斜板の斜板角は、ある所定値（最大容量）よりは大きくならないため、油圧ポンプから吐き出される作動油流量が作業機の油圧シリンダに十分供給されない。したがって、このような場合に、オペレータの作業機を速く動かしして作業したいという意思に作業機が対応できず、操作上の違和感が生じるという問題点があった。
【０００８】
この問題点を解決するための第１の方策として、図３０のトルク線図に示すように、無負荷時のエンジン回転数を高回転数ｎ１１（例えば、２０５０ｒｐｍ近傍）のところに設定し、エンジン回転数に対して油圧ポンプが吸収可能な最大トルクを示すポンプ吸収トルク線をＰＬ１として設定するとする。そのようにすると、負荷が低い場合には、マッチング点Ｍ１１でエンジン出力馬力とポンプ吸収馬力がマッチングする。したがって、油圧ポンプの斜板角が任意であってもエンジン回転数が高いため、油圧ポンプから作業機の油圧シリンダに吐き出される作動油流量が確保され、作業機速度の充足を図ることができる。その後、作業機に負荷が加わった場合、ドループ線ＤＬ２に沿ってエンジントルクが上昇し、マッチング点Ｍ１と同じ等馬力曲線ＥＬ１上のマッチング点Ｍ１２でマッチングすることで所望とする作業機出力を得ることができる。しかし、このような制御を行うと、図２８で示した等燃費曲線の目玉Ｍ１から外れた、燃費の悪い位置でエンジンが駆動するため、低燃費を図ることができないという問題が考えられる。
【０００９】
また、上述した問題点を解決するための第２の方策として、図３０のトルク線図に示すように、ポンプ吸収トルク線をＰＬ２に設定し、マッチング点Ｍ１２に替えて、目標マッチングルートＭＬ上にマッチング点Ｍ１３を設定するとする。作業機に負荷がかかった場合、エンジンの出力は、マッチング点Ｍ１１からドループ線ＤＬ２に沿ってマッチング点Ｍ１３でマッチングする。この場合、等燃費曲線の目玉Ｍ１に近い位置でマッチングすることになるが、馬力の高い等馬力曲線ＥＬ２上のエンジン出力でエンジンが駆動することとなるため、必要以上のエネルギー消費が行われ、低回転かつ低出力のマッチング点Ｍ１に比して燃費は悪化することが考えられる。
【００１０】
この発明は、上記に鑑みてなされたものであって、低燃費と作業性の向上とを両立することができる作業機械のエンジン制御装置およびそのエンジン制御方法を提供することを目的とする。
【課題を解決するための手段】
【００１１】
上述した課題を解決し、目的を達成するために、この発明にかかる作業機械のエンジン制御装置は、作業機械の運転状態を検出する検出手段と、前記運転状態をもとに、作業機械の負荷が抜けた場合に最大限上げられるエンジンの回転数である無負荷最大回転数を演算する無負荷最大回転数演算手段と、前記運転状態をもとに、負荷が加わった場合に上げられるエンジンの回転数である目標マッチング回転数を前記無負荷最大回転数とは別に演算する目標マッチング回転数演算手段と、前記運転状態をもとに、最大限出力することができるエンジン目標出力を演算するエンジン目標出力演算手段と、前記エンジン目標出力の制限下で、前記無負荷最大回転数と前記目標マッチング回転数との間でエンジン回転数を制御するエンジン制御手段と、を備えたことを特徴とする。
【００１２】
また、この発明にかかる作業機械のエンジン制御装置は、上記の発明において、予めエンジン回転数の変動幅を設定する変動幅設定手段と、前記無負荷最大回転数から前記変動幅分の回転数下げたエンジンの回転数を最小回転数制限値とし、前記運転状態をもとに、負荷が加わった場合に最低限上げなければならないエンジンの回転数であるマッチング最小回転数を演算するマッチング最小回転数演算手段と、を備え、前記エンジン制御手段は、前記エンジン目標出力の制限下で、前記無負荷最大回転数と前記マッチング最小回転数との間でエンジン回転数を制御することを特徴とする。
【００１３】
また、この発明にかかる作業機械のエンジン制御装置は、上記の発明において、前記エンジン制御手段は、前記目標マッチング回転数に下限回転数オフセット値を加えたエンジン回転数をエンジン回転数指令値として出力することを特徴とする。
【００１４】
また、この発明にかかる作業機械のエンジン制御装置は、上記の発明において、可変容量型油圧ポンプと、前記可変容量型油圧ポンプのポンプ容量を検出する容量検出手段と、を備え、前記エンジン制御手段は、前記ポンプ容量が閾値以上である場合、エンジン回転数を上げ、ポンプ容量が閾値未満の場合、エンジン回転数を下げたエンジン回転数指令値を出力することを特徴とする。
【００１５】
また、この発明にかかる作業機械のエンジン制御装置は、上記の発明において、前記マッチング最小回転数演算手段は、前記作業機械の旋回体の回転数を検出する回転数検出手段による検出値がゼロに近い場合にはマッチング最小回転数を上げ、前記回転数検出手段による検出値が大きくなるに従ってマッチング最小回転数を下げた値を最小回転数制限値とし、前記運転状態をもとに、前記作業機械に負荷が加わった場合に最低限上げなければならないエンジンの回転数であるマッチング最小回転数を演算することを特徴とする。
【００１６】
また、この発明にかかる作業機械のエンジン制御方法は、作業機械の運転状態を検出する検出ステップと、前記運転状態をもとに、作業機械の負荷が抜けた場合に最大限上げられるエンジンの回転数である無負荷最大回転数を演算する無負荷最大回転数演算ステップと、前記運転状態をもとに、作業機械の負荷が加わった場合に上げられるエンジンの回転数である目標マッチング回転数を前記無負荷最大回転数とは別に演算する目標マッチング回転数演算ステップと、前記運転状態をもとに、最大限出力することができるエンジン目標出力を演算するエンジン目標出力演算ステップと、前記エンジン目標出力の制限下で、前記無負荷最大回転数と前記目標マッチング回転数との間でエンジン回転数を制御するエンジン制御ステップと、を含むことを特徴とする。
【００１７】
また、この発明にかかる作業機械のエンジン制御方法は、上記の発明において、予めエンジン回転数の変動幅を設定する変動幅設定ステップと、前記無負荷最大回転数から前記変動幅分の回転数下げたエンジンの回転数を最小回転数制限値とし、前記運転状態をもとに、作業機械に負荷が加わった場合に最低限上げなければならないエンジンの回転数であるマッチング最小回転数を演算するマッチング最小回転数演算ステップと、を含み、前記エンジン制御ステップは、前記エンジン目標出力の制限下で、前記無負荷最大回転数と前記マッチング最小回転数との間でエンジン回転数を制御することを特徴とする。
【発明の効果】
【００１８】
この発明によれば、エンジン目標出力の制限下で、無負荷最大回転数と目標マッチング回転数との間でエンジン回転数を制御するようにしているので、低燃費と作業性の向上とを両立することができる。
【図面の簡単な説明】
【００１９】
【図１】図１は、この発明の実施の形態１にかかる油圧ショベルの全体構成を示す斜視図である。
【図２】図２は、図１に示した油圧ショベルの制御系の構成を示す模式図である。
【図３】図３は、エンジンコントローラあるいはポンプコントローラによるエンジン制御内容を説明するトルク線図である。
【図４】図４は、エンジンコントローラあるいはポンプコントローラによるエンジン制御内容を説明するトルク線図である。
【図５】図５は、エンジンコントローラあるいはポンプコントローラによる全体制御フローを示す図である。
【図６】図６は、図５に示した無負荷最大回転数演算ブロックの詳細制御フローを示す図である。
【図７】図７は、図５に示したエンジン最小出力演算ブロックの詳細制御フローを示す図である。
【図８】図８は、図５に示したエンジン最大出力演算ブロックの詳細制御フローを示す図である。
【図９】図９は、図５に示したエンジン目標出力演算ブロックの詳細制御フローを示す図である。
【図１０】図１０は、図５に示したマッチング最小回転数演算ブロックの詳細制御フローを示す図である。
【図１１】図１１は、図５に示した目標マッチング回転数演算ブロックの詳細制御フローを示す図である。
【図１２】図１２は、図５に示したエンジン回転数指令値演算ブロックの詳細制御フローを示す図である。
【図１３】図１３は、図５に示したポンプ吸収トルク指令値演算ブロックの詳細制御フローを示す図である。
【図１４】図１４は、エンジンコントローラあるいはポンプコントローラによるエンジン制御内容を説明するトルク線図である。
【図１５】図１５は、従来のエンジン制御における、ポンプばらつきによるエンジン出力ばらつきの状態を示すトルク線図である。
【図１６】図１６は、この発明の実施の形態１における、ポンプばらつきによるエンジン出力ばらつきの状態を示すトルク線図である。
【図１７】図１７は、従来のエンジン制御における、過渡時のエンジン出力移行状態を示すトルク線図である。
【図１８】図１８は、この発明の実施の形態１における、過渡時のエンジン出力移行状態を示すトルク線図である。
【図１９】図１９は、この発明の実施の形態２であるハイブリッド油圧ショベルの制御系の構成を示す模式図である。
【図２０】図２０は、この発明の実施の形態２のエンジンコントローラあるいはポンプコントローラ、ハイブリッドコントローラによる全体制御フローを示す図である。
【図２１】図２１は、図２０に示した無負荷最大回転数演算ブロックの詳細制御フローを示す図である。
【図２２】図２２は、図２０に示したエンジン最大出力演算ブロックの詳細制御フローを示す図である。
【図２３】図２３は、図２０に示したマッチング最小回転数演算ブロックの詳細制御フローを示す図である。
【図２４】図２４は、図２０に示した目標マッチング回転数演算ブロックの詳細制御フローを示す図である。
【図２５】図２５は、図２０に示したポンプ吸収トルク指令値演算ブロックの詳細制御フローを示す図である。
【図２６】図２６は、発電オン／オフ時の目標マッチング回転数の設定状態を示すトルク線図である。
【図２７】図２７は、従来のエンジン制御を説明するトルク線図である。
【図２８】図２８は、目標マッチングルートを用いた従来のエンジン制御を説明するトルク線図である。
【図２９】図２９は、従来のエンジン制御を説明するトルク線図である。
【図３０】図３０は、従来のエンジン制御を説明するトルク線図である。
【発明を実施するための形態】
【００２０】
以下、添付図面を参照してこの発明を実施するための形態について説明する。
【００２１】
（実施の形態１）
［全体構成］
まず、図１および図２は、作業機械としての一例である油圧ショベル１の全体構成を示している。この油圧ショベル１は、車両本体２と作業機３とを備えている。車両本体２は、下部走行体４と上部旋回体５とを有する。下部走行体４は、一対の走行装置４ａを有する。各走行装置４ａは、履帯４ｂを有する。各走行装置４ａは、右走行モータと左走行モータ（走行モータ２１）とによって履帯４ｂを駆動することによって油圧ショベル１を走行あるいは旋回させる。
【００２２】
上部旋回体５は、下部走行体４上に旋回可能に設けられ、旋回油圧モータ３１が駆動することによって旋回する。また、上部旋回体５には、運転室６が設けられる。上部旋回体５は、燃料タンク７と作動油タンク８とエンジン室９とカウンタウェイト１０とを有する。燃料タンク７は、エンジン１７を駆動するための燃料を貯留する。作動油タンク８は、油圧ポンプ１８からブームシリンダ１４などの油圧シリンダや旋回油圧モータ３１、走行モータ２１などの油圧機器へ吐出される作動油を貯留する。エンジン室９は、エンジン１７や油圧ポンプ１８などの機器を収納する。カウンタウェイト１０は、エンジン室９の後方に配置される。
【００２３】
作業機３は、上部旋回体５の前部中央位置に取り付けられ、ブーム１１、アーム１２、バケット１３、ブームシリンダ１４、アームシリンダ１５、およびバケットシリンダ１６を有する。ブーム１１の基端部は、旋回体５に回転可能に連結される。また、ブーム１１の先端部は、アーム１２の基端部に回転可能に連結される。アーム１２の先端部は、バケット１３に回転可能に連結される。ブームシリンダ１４、アームシリンダ１５、およびバケットシリンダ１６は、油圧ポンプ１８から吐出された作動油によって駆動する油圧シリンダである。ブームシリンダ１４は、ブーム１１を動作させる。アームシリンダ１５は、アーム１２を動作させる。バケットシリンダ１６は、バケット１３を動作させる。
【００２４】
図２において、油圧ショベル１は、駆動源としてのエンジン１７、油圧ポンプ１８を有する。エンジン１７としてディーゼルエンジンが用いられ、油圧ポンプ１８として可変容量型油圧ポンプ（例えば斜板式油圧ポンプ）が用いられる。エンジン１７の出力軸には、油圧ポンプ１８が機械的に結合されており、エンジン１７を駆動することで、油圧ポンプ１８が駆動する。
【００２５】
油圧駆動系は、車両本体２に設けられた運転室６に設けられる作業機レバー、走行レバー、旋回レバーなどの操作レバー２６の操作に応じて駆動する。操作レバー２６の操作量は、レバー操作量検出部２７によって電気信号に変換される。レバー操作量検出部２７は、圧力センサによって構成される。操作レバーの操作に応じて発生するパイロット油圧を圧力センサが検知し、圧力センサが出力する電圧等をレバー操作量に換算することによってレバー操作量を求める。レバー操作量は、電気信号としてポンプコントローラ３３へ出力される。なお、操作レバー２６が電気式レバーである場合には、レバー操作量検出部２７は、ポテンショメータなどの電気的検出手段によって構成され、レバー操作量に応じて発生する電圧等をレバー操作量に換算してレバー操作量を求める。
【００２６】
運転室６内には、燃料調整ダイヤル（スロットルダイヤル）２８およびモード切替部２９が設けられる。燃料調整ダイヤル（スロットルダイヤル）２８は、エンジン１７への燃料供給量を設定するためのスイッチであり、燃料調整ダイヤル（スロットルダイヤル）２８の設定値は、電気信号に変換されてエンジンコントローラ３０に出力される。
【００２７】
エンジンコントローラ３０は、ＣＰＵ（数値演算プロセッサ）などの演算装置やメモリ（記憶装置）で構成される。エンジンコントローラ３０は、燃料調整ダイヤル（スロットルダイヤル）２８の設定値に基づいて、制御指令の信号を生成し、コモンレール制御部３２が制御信号を受信し、エンジン１７への燃料噴射量を調整する。すなわち、エンジン１７は、コモンレール式による電子制御が可能なエンジンであり、燃料噴射量を適切にコントロールすることで狙いとする出力を出すことが可能であり、ある瞬間のエンジン回転数における出力可能なトルクを自由に設定することが可能である。
【００２８】
モード切替部２９は、油圧ショベル１の作業モードをパワーモードまたはエコノミーモードに設定する部分であり、たとえば運転室６中に設けられる操作ボタンやスイッチ、またはタッチパネルで構成され、油圧ショベル１のオペレータがそれらの操作ボタンなどを操作することで作業モードを切り替えることができる。パワーモードとは、大きな作業量を維持しながら燃費を抑えたエンジン制御およびポンプ制御を行う作業モードであり、エコノミーモードとは、さらに燃費を抑えつつ軽負荷作業で作業機３の動作速度を確保するようにエンジン制御およびポンプ制御を行う作業モードである。このモード切替部２９による設定（作業モードの切り替え）では、電気信号がエンジンコントローラ３０、ポンプコントローラ３３に出力される。なお、パワーモードでは、エンジン１７の回転数および出力トルクが比較的高い領域でエンジン１７の出力トルクと油圧ポンプ１８の吸収トルクとをマッチングさせる。また、エコノミーモードでは、パワーモードの場合と比較して低いエンジン出力でマッチングさせる。
【００２９】
ポンプコントローラ３３は、エンジンコントローラ３０、モード切替部２９、レバー操作量検出部２７から送信された信号を受信して、油圧ポンプ１８の斜板角を傾倒制御して油圧ポンプ１８からの作動油の吐出量を調整するための制御指令の信号を生成する。なお、ポンプコントローラ３３には、油圧ポンプ１８の斜板角を検出する斜板角センサ１８ａからの信号が入力される。斜板角センサ１８ａが斜板角を検出することで、油圧ポンプ１８のポンプ容量を演算することができる。コントロールバルブ２０内には、油圧ポンプ１８のポンプ吐出圧力を検出するためのポンプ圧検出部２０ａが設けられている。検出されたポンプ吐出圧力は、電気信号に変換されてポンプコントローラ３３に入力される。なお、エンジンコントローラ３０とポンプコントローラ３３とは、相互に情報の授受が行われるようにＣＡＮ（Controller Area Network）のような車内ＬＡＮで接続されている。
【００３０】
［エンジン制御の概要］
まず、図３に示すトルク線図を参照してエンジン制御の概要について説明する。エンジンコントローラ３０は、レバー操作量、作業モードおよび燃料調整ダイヤル（スロットルダイヤル）２８の設定値、上部旋回体５の旋回速度（旋回回転数）などの情報（運転状態を示す信号）を取得し、エンジン出力指令値を求める。このエンジン出力指令値は、トルク線図上の等馬力曲線（エンジン出力指令値曲線）ＥＬとなり、エンジンの出力を制限する曲線である。
【００３１】
そして、作業機３に負荷がかかっている場合、エンジン出力をドループ線に拘束させず、エンジン出力指令値曲線ＥＬとポンプ吸収トルク線ＰＬとの交点（マッチング点）ＭＰ１でエンジン出力と油圧ポンプ出力とをマッチングさせて作業機３を動作させる。なお、このマッチング点ＭＰ１は、目標マッチングルートＭＬ上にもたせることが好ましい。この目標マッチング点ＭＰ１でのエンジン回転数は、目標マッチング回転数ｎｐ１であり、たとえば、図３では１０００ｒｐｍ近傍となる。これにより、作業機３は十分な出力を得ることができるとともに、エンジン１７は低回転数で駆動するため、燃料消費を低く抑えることができる。
【００３２】
一方、作業機３の負荷が抜けた場合であって、作業機３の油圧シリンダ１４，１５，１６への作動油流量が必要な場合、すなわち作業機３の動作速度の確保が必要な場合、エンジンコントローラ３０は、レバー操作量、上部旋回体５の旋回回転数、燃料調整ダイヤル（スロットルダイヤル）２８の設定値等の情報に対応した無負荷最大回転数ｎｐ２（たとえば図３では、２０５０ｒｐｍ近傍）を決定し、目標マッチング回転数ｎｐ１と無負荷最大回転数ｎｐ２との間のエンジン回転数範囲内でエンジンドループを制御してエンジン１７を駆動させる。このような制御を行うことによって、作業機３の負荷がかかった状態から負荷が抜けた状態に移行した場合、低回転側のマッチング点ＭＰ１から高回転側のマッチング点ＭＰ２に移行することから、油圧ポンプ１８から吐き出される作動油流量を十分に油圧シリンダ１４，１５，１６に供給することができ、作業機３の動作速度を確保することができる。また、エンジン出力指令値曲線ＥＬによってエンジン出力が制限されるため、無駄なエネルギーを消費しない。なお、無負荷最大回転数ｎｐ２は、エンジンが出力可能な最大回転数に限らない。
【００３３】
ここで、作業機３の負荷がさらに抜けた場合、そのままエンジン１７を高回転域で駆動させると燃料消費され燃費が悪化することとなる。したがって、負荷が抜けた場合であって、たとえばバケット１３のみの動作のように、油圧ポンプ１８からの作動油の吐出流量および吐出圧力を多く必要としない場合、すなわちポンプ容量に余裕がある場合、図４に示すように、高回転域のドループ線ＤＬを低回転域にシフトさせる制御を行う。上記のように、ポンプ容量は、斜板角センサ１８ａによって検出され、この検出値の大小によってドループ線をシフトする。たとえば、ポンプ容量が所定値よりも大きいと検出された場合には作動油流量を必要としているため、ドループ線ＤＬを高回転域にシフトさせてエンジン回転数を上げ、ポンプ容量が所定値よりも小さいと検出された場合には作動油流量を必要としていないため、ドループ線ＤＬを低回転域にシフトさせてエンジン回転数を下げる。このような制御を行うことによって、高回転域でのエンジン駆動による無駄な燃料消費を抑えることができる。
【００３４】
［エンジン制御の詳細］
図５は、エンジンコントローラ３０あるいはポンプコントローラ３３による全体制御フローを示している。エンジンコントローラ３０あるいはポンプコントローラ３３は、最終的にエンジン制御指令としてのエンジン回転数指令値とエンジン出力指令値を演算し、ポンプ制御指令としてポンプ吸収トルク指令値を演算する。
【００３５】
無負荷最大回転数演算ブロック１１０は、図６に示した詳細制御フローによって、エンジン回転数指令値の上限値となる値である無負荷最大回転数Ｄ２１０（ｎｐ２）を演算する。油圧ポンプ１８のポンプ容量が最大の状態では、油圧ポンプ１８の流量（油圧ポンプ吐出流量）はエンジン回転数とポンプ容量との積であり、油圧ポンプ１８の流量（油圧ポンプ吐出流量）はエンジン回転数に比例するため、無負荷最大回転数Ｄ２１０と油圧ポンプ１８の流量（ポンプ最大吐出量）は比例関係にあることになる。このため、まず、無負荷最大回転数Ｄ２１０の候補値として、各レバー値信号Ｄ１００（レバー操作量）によって求めた無負荷回転数の総和を総和部２１２によって求める。各レバー値信号Ｄ１００（各レバー操作量を示す信号）としては、旋回レバー値、ブームレバー値、アームレバー値、バケットレバー値、走行右レバー値、走行左レバー値、サービスレバー値がある。このサービスレバー値は、新たな油圧アクチュエータを接続できる油圧回路を有する場合における、この油圧アクチュエータを操作するレバー操作量を示す値である。各レバー値信号は、図６に示すようなレバー値・無負荷回転数変換テーブル２１１で無負荷回転数に変換され、この変換された値を総和部２１２によって求めた総和の無負荷回転数が最小値選択部（ＭＩＮ選択）２１４に出力される。
【００３６】
一方、無負荷回転数リミット値選択ブロック２１０は、各操作レバー値信号Ｄ１００の操作量、油圧ポンプ１８の吐出圧力であるポンプ圧力Ｄ１０４，Ｄ１０５、およびモード切替部２９によって設定された作業モードＤ１０３の４つの情報を用いて、作業機械１のオペレータが、現在どのような操作パターン（作業パターン）を実行しているかを判定し、予め設定されている操作パターンに対する無負荷回転数リミット値を選択し決定する。この決定された無負荷回転数リミット値は、最小値選択部２１４に出力される。この操作パターン（作業パターン）の判定とは、たとえば、アームレバーが掘削方向に傾倒しており、ポンプ圧力も、ある設定値よりも高い場合、油圧ショベル１は重掘削作業を実行しようとしていると判定し、旋回レバーが傾倒しているとともにブームレバーが上げ方向に傾倒しているような複合操作の場合、油圧ショベル１はホイスト旋回作業を実行しようとしていると判定するものである。このように、操作パターン（作業パターン）の判定とは、そのときにオペレータが実行しようとしている操作を推定することである。なお、ホイスト旋回作業とは、バケット１３で掘削した土砂をブーム１１を上げながら上部旋回体５を旋回させ、所望の旋回停止の位置でバケット１３の土砂を排土するような作業である。
【００３７】
他方、燃料調整ダイヤル２８（スロットルダイヤルＤ１０２）の設定状態（設定値）からも無負荷最大回転数の候補値を決定する。すなわち、燃料調整ダイヤル２８（スロットルダイヤルＤ１０２）の設定値を示す信号を受けて、設定値はスロットルダイヤル・無負荷回転数変換テーブル２１３で、無負荷最大回転数の候補値に変換され、最小値選択部２１４に出力される。
【００３８】
最小値選択部２１４は、レバー値信号Ｄ１００から求めた無負荷回転数と無負荷回転数リミット値選択ブロック２１０で求めた無負荷回転数リミット値とスロットルダイヤルＤ１０２の設定値から求めた無負荷回転数との３つの値のなかから最小値を選択し、無負荷最大回転数Ｄ２１０（ｎｐ２）を出力する。
【００３９】
図７はエンジン最小出力演算ブロック１２０の詳細制御フローである。図７に示すように、エンジン最小出力演算ブロック１２０は、エンジン出力指令値の下限となる値であるエンジン最小出力Ｄ２２０を演算する。レバー値・エンジン最小出力変換テーブル２２０は、無負荷最大回転数の演算と同様に、各レバー値信号Ｄ１００をエンジン最小出力に変換し、総和部２２１がこれらの総和を最小値選択部（ＭＩＮ選択）２２３に出力する。
【００４０】
一方、エンジン最小出力の最大値選択ブロック２２２は、モード切替部２９によって設定される作業モードＤ１０３に対応した上限値を最小値選択部２２３に出力する。最小値選択部２２３は、各レバー値信号Ｄ１００に対応したエンジン最小出力の総和と、作業モードＤ１０３に対応した上限値とを比較し、最小値を選択してエンジン最小出力Ｄ２２０として出力する。
【００４１】
図８はエンジン最大出力演算ブロック１３０の詳細制御フローである。図８に示すように、エンジン最大出力演算ブロック１３０は、エンジン出力指令値の上限となる値であるエンジン最大出力Ｄ２３０を演算する。ポンプ出力リミット値選択ブロック２３０は、無負荷最大回転数演算ブロック１１０による演算と同様に、各レバー値信号Ｄ１００の操作量とポンプ圧力Ｄ１０４，Ｄ１０５と作業モードＤ１０３の設定値の情報を用いて、現在の操作パターンを判定し、その操作パターン毎にポンプ出力リミット値を選択する。この選択されたポンプ出力リミット値に、図示しない回転数センサによって検出されたエンジン回転数Ｄ１０７からファン馬力演算ブロック２３１が演算したファン馬力が加算部２３３によって加算される。その加算された値（以下、加算値）と、燃料調整ダイヤル２８（スロットルダイヤルＤ１０２）の設定値に応じてスロットルダイヤル・エンジン出力リミット変換テーブル２３２によって変換したエンジン出力リミット値とが、最小値選択部（ＭＩＮ選択）２３４に出力される。最小値選択部２３４は、加算値とエンジン出力リミット値のうちの最小値を選択し、エンジン最大出力Ｄ２３０として出力する。なお、ファンとは、エンジン１７を冷却するためのラジエータの近傍に設けられたファンであり、ラジエータに向かって空気を送風させるものであり、エンジン１７の駆動に連動して回転駆動するものである。なお、ファン馬力は、次式、
ファン馬力＝ファン定格馬力×（エンジン回転数／ファン定格時エンジン回転数）＾３
を用いて簡易的に演算することで求められる。
【００４２】
図９はエンジン目標出力演算ブロック１４０の詳細制御フローである。図９に示すように、エンジン目標出力演算ブロック１４０は、エンジン目標出力Ｄ２４０を演算する。減算部２４３は、前回演算して求めた前回エンジン目標出力Ｄ２４０から固定値として設定されているエンジン出力加算用オフセット値２４１を減じる。減算部２４４は、この減算した値から、エンジン実出力演算ブロック２４２で演算したエンジン実出力を減算した偏差を求める。乗算部２４５は、この偏差に、あるゲイン（−Ｋｉ）を乗じた値を乗算し、積分部２４６がこの乗算値を積分する。加算部２４７は、この積分値に、エンジン最小出力演算ブロック１２０で演算して求められたエンジン最小出力Ｄ２２０を加算する。最小値選択部（ＭＩＮ選択）２４８は、この加算値と、エンジン最大出力演算ブロック１３０で演算して求められたエンジン最大出力Ｄ２３０とのうちの最小値をエンジン目標出力Ｄ２４０として出力する。エンジン目標出力Ｄ２４０は、図５に示すようにエンジン制御指令のエンジン出力指令値として用いられ、エンジン目標出力Ｄ２４０は、図３あるいは図４に示すエンジン出力指令値曲線ＥＬを意味する。なお、エンジン実出力演算ブロック２４２は、エンジンコントローラ３０が指令している燃料噴射量とエンジン回転数、大気温度などにより予測したエンジントルクＤ１０６と図示しない回転数センサによって検出されたエンジン回転数Ｄ１０７とをもとに、次式
エンジン実出力（ｋＷ）＝２π÷６０×エンジン回転数×エンジントルク÷１０００
を用いて演算しエンジン実出力を求める。
【００４３】
図１０はマッチング最小回転数演算ブロック１５０の詳細制御フローである。図１０に示すように、マッチング最小回転数演算ブロック１５０は、作業時に最低限上昇させなければならないエンジン回転数であるマッチング最小回転数Ｄ１５０を演算する。マッチング最小回転数Ｄ１５０は、各レバー値信号Ｄ１００を、レバー値・マッチング最小回転数変換テーブル２５１で変換した各値がマッチング最小回転数Ｄ１５０の候補値となり、それぞれ最大値選択部（ＭＡＸ選択）２５５に出力される。
【００４４】
一方、無負荷回転数・マッチング回転数変換テーブル２５２は、目標マッチング回転数ｎｐ１と同じように、無負荷最大回転数ｎｐ２で交わるドループ線ＤＬと目標マッチングルートＭＬとの交点におけるエンジン回転数をマッチング回転数ｎｐ２’として、無負荷最大回転数演算ブロック１１０で求められた無負荷最大回転数Ｄ２１０（ｎｐ２）を変換し出力する（図１４参照）。さらに、このマッチング回転数ｎｐ２’から低速オフセット回転数を減算し、その結果得られた値は、マッチング最小回転数Ｄ１５０の候補値として最大値選択部（ＭＡＸ選択）２５５に出力される。低速オフセット回転数を用いる意義とその値の大小については、後述する。
【００４５】
また、旋回回転数・マッチング最小回転数変換テーブル２５０は、旋回回転数Ｄ１０１をマッチング最小回転数Ｄ１５０の候補値として変換して最大値選択部２５５に出力する。旋回回転数Ｄ１０１は、図２の旋回油圧モータ３１の旋回回転数（速度）をレゾルバやロータリーエンコーダなどの回転センサで検出した値である。なお、この旋回回転数・マッチング最小回転数変換テーブル２５０は、図１０に示すように旋回回転数Ｄ１０１がゼロのときマッチング最小回転数を大きくし、旋回回転数Ｄ１０１が大きくなるにしたがってマッチング最小回転数を小さくするような特性で旋回回転数Ｄ１０１の変換を行う。最大値選択部２５５は、これらのマッチング最小回転数のうちの最大値を選択してマッチング最小回転数Ｄ１５０として出力する。
【００４６】
ここで、この実施の形態では、負荷が抜けた場合、エンジン回転数は、最大で無負荷最大回転数ｎｐ２まで増加し、負荷が十分かかった場合、エンジン回転数は、目標マッチング回転数ｎｐ１まで下がる。この場合、負荷の大小によってエンジン回転数は大きく変動することになる。このエンジン回転数の大きな変動は、油圧ショベル１のオペレータにとって油圧ショベル１の力が出ていないように感じるといった違和感（力不足感）として、オペレータがとらえるおそれがある。したがって、図１４に示すように、低速オフセット回転数を用い、この設定される低速オフセット回転数の大小によって、エンジン回転数の変動幅を変化させて違和感を除くことができる。すなわち、低速オフセット回転数を小さくすれば、エンジン回転数の変動幅は小さくなり、低速オフセット回転数を大きくすれば、エンジン回転数の変動幅は大きくなる。なお、上部旋回体２が旋回をしている状態や作業機３が掘削作業をしている状態などの油圧ショベル１の稼動状態によって、同じエンジン回転数の変動幅であってもオペレータの違和感の感じ方が異なる。上部旋回体２が旋回をしている状態では、作業機３が掘削作業をしている状態よりも多少エンジン回転数が下がってもオペレータは力不足とは感じにくいので、上部旋回体２が旋回している状態では、作業機３が掘削作業をしている状態よりもエンジン回転数がさらに下がるように設定しても問題はない。この場合、エンジン回転数が下がるため燃費は良くなる。なお、旋回に限らず、他のアクチュエータの動作に応じた、同様なエンジン回転数の変動幅設定は可能である。
【００４７】
図１４に示すトルク線図について補足説明する。図１４のグラフ中に示す、ＨＰ１〜ＨＰ５は図２８に示す等馬力線Ｊに相当し、ｐｓは馬力単位（ｐｓ）を示し、ＨＰ１〜ＨＰ５へといくにつれて馬力が大きくなり、５本の曲線は例示的に示したものである。求められるエンジン出力指令値によって、等馬力曲線（エンジン出力指令値曲線）ＥＬが求められ設定される。よって、この等馬力曲線（エンジン出力指令値曲線）ＥＬは、ＨＰ１〜ＨＰ５の５つに限らず無数存在し、その中から選択されるものである。図１４は、馬力がＨＰ３ｐｓとＨＰ４ｐｓの間の馬力となる等馬力曲線（エンジン出力指令値曲線）ＥＬが求められ設定されている場合を示している。
【００４８】
図１１は目標マッチング回転数演算ブロック１６０の詳細制御フローである。図１１に示すように、目標マッチング回転数演算ブロック１６０は、図３に示した、目標マッチング回転数ｎｐ１（Ｄ２６０）を演算する。目標マッチング回転数Ｄ２６０は、エンジン目標出力Ｄ２４０（エンジン出力指令値曲線ＥＬ）と目標マッチングルートＭＬとが交差するエンジン回転数である。目標マッチングルートＭＬは、あるエンジン出力でエンジン１７が動作する際に燃料消費率が良い点を通るように設定されているため、この目標マッチングルートＭＬ上のエンジン目標出力Ｄ２４０との交点で目標マッチング回転数Ｄ２６０を決定するのが好ましい。このため、エンジン目標出力・目標マッチング回転数変換テーブル２６０では、エンジン目標出力演算ブロック１４０で求められたエンジン目標出力Ｄ２４０（エンジン出力指令値曲線ＥＬ）の入力を受けて、エンジン目標出力Ｄ２４０（エンジン出力指令値曲線ＥＬ）と目標マッチングルートＭＬとの交点での目標マッチング回転数を求め、最大値選択部（ＭＡＸ選択）２６１に出力する。
【００４９】
しかし、図１０に示したマッチング最小回転数演算ブロック１５０で行われる演算によれば、エンジン回転数の変動幅を小さくする場合、マッチング最小回転数Ｄ１５０が、エンジン目標出力・目標マッチング回転数変換テーブル２６０にて求めたマッチング回転数よりも大きくなる。このため、最大値選択部（ＭＡＸ選択）２６１で、マッチング最小回転数Ｄ１５０とエンジン目標出力Ｄ２４０から求めたマッチング回転数とを比較し、最大値を選択し目標マッチング回転数Ｄ２６０の候補値とすることで、目標マッチング回転数の下限を制限している。図１４では、低速オフセット回転数を小とすれば、目標マッチングルートＭＬを外れるが、目標マッチング点は、ＭＰ１ではなくＭＰ１’となって、目標マッチング回転数Ｄ２６０は、ｎｐ１ではなくｎｐ１’となる。また、無負荷最大回転数演算ブロック１１０で求めた無負荷最大回転数Ｄ２１０と同様に、目標マッチング回転数Ｄ２６０は、燃料調整ダイヤル２８（スロットルダイヤルＤ１０２）の設定値によっても上限が制限される。すなわち、スロットルダイヤル・目標マッチング回転数変換テーブル２６２は、燃料調整ダイヤル２８（スロットルダイヤルＤ１０２）の設定値の入力を受けて、燃料調整ダイヤル２８（スロットルダイヤルＤ１０２）の設定値に対応するドループ線（トルク線図上で燃料調整ダイヤル２８（スロットルダイヤルＤ１０２）の設定値に対応するエンジン回転数から引くことができるドループ線）と目標マッチングルートＭＬとの交点のマッチング回転数に変換した目標マッチング回転数Ｄ２６０の候補値を出力し、この出力された目標マッチング回転数Ｄ２６０の候補値と、最大値選択部２６１で選択された目標マッチング回転数Ｄ２６０の候補値とが最小値選択部（ＭＩＮ選択）２６３で比較され、最小値が選択されて、最終的な目標マッチング回転数Ｄ２６０が出力される。
【００５０】
図１２はエンジン回転数指令値演算ブロック１７０の詳細制御フローである。以下、図４に示すトルク線図を参照しながら説明する。図１２に示すように、エンジン回転数指令値演算ブロック１７０は、２つの油圧ポンプ１８の斜板角センサ１８ａが検出した斜板角をもとに求められたポンプ容量Ｄ１１０，Ｄ１１１をもとに、平均部２７０がポンプ容量Ｄ１１０，Ｄ１１１を平均した平均ポンプ容量を算出し、この平均ポンプ容量の大きさに応じて、エンジン回転数指令選択ブロック２７２が、エンジン回転数指令値Ｄ２７０（無負荷最大回転数ｎｐ２）を求める。すなわち、エンジン回転数指令選択ブロック２７２は、平均ポンプ容量が、ある設定値（閾値）よりも大きな場合は、エンジン回転数指令値Ｄ２７０を無負荷最大回転数ｎｐ２（Ｄ２１０）に近づけるようにする。つまり、エンジン回転数を増大させる。一方、平均ポンプ容量が、ある設定値よりも小さな場合は、後述するエンジン回転数ｎｍ１に近づけるよう、つまりエンジン回転数を減少させる。目標マッチング回転数ｎｐ１（Ｄ２６０）と目標マッチング点ＭＰ１上のトルクとの交点からドループ線に沿って、エンジントルクをゼロのほうへ下ろした位置に相当するエンジン回転数を無負荷回転数ｎｐ１ａとして、その無負荷回転数ｎｐ１ａに下限回転数オフセット値Δｎｍを加えた値としてエンジン回転数ｎｍ１を求める。なお、目標マッチング回転数Ｄ２６０に対応する無負荷回転数への変換は、マッチング回転数・無負荷回転数変換テーブル２７１によって変換される。したがって、エンジン回転数指令値Ｄ２７０は、ポンプ容量の状態によって、無負荷最小回転数ｎｍ１と無負荷最大回転数ｎｐ２との間で決まる。下限回転数オフセット値Δｎｍは、あらかじめ設定した値であって、エンジンコントローラ３０のメモリに記憶されている。
【００５１】
具体的に説明すると、平均ポンプ容量が、ある設定値q_com1より大きな場合には、エンジン回転数指令値Ｄ２７０を無負荷最大回転数ｎｐ２に近づけるようにし、平均ポンプ容量が、ある設定値q_com1よりも小さい場合には、次式、
エンジン回転数指令値Ｄ２７０＝目標マッチング回転数ｎｐ１を無負荷回転数に変換した回転数ｎｐ１ａ＋下限回転数オフセット値Δｎｍ
を用いて求める値に近づけるようにする。このようにして求められたエンジン回転数指令値Ｄ２７０によってドループ線を制御することができ、ポンプ容量に余裕がある場合（平均ポンプ容量がある設定値より小の場合）には、図４に示すように、エンジン回転数を下げる（エンジン回転数をｎｍ１（無負荷最小回転数）にする）ことが可能になり、燃料消費を抑えて燃費向上が可能になる。設定値q_com1は、あらかじめ設定した値であって、ポンプコントローラ３３のメモリに記憶されている。なお、設定値q_com1は、エンジン回転数増加側とエンジン回転数減少側とに分けて２つの異なる設定値を設け、エンジン回転数が変化しない範囲を設けるようにしてもよい。
【００５２】
図１３はポンプ吸収トルク指令値演算ブロック１８０の詳細制御フローである。図１３に示すように、ポンプ吸収トルク指令値演算ブロック１８０は、現在のエンジン回転数Ｄ１０７とエンジン目標出力Ｄ２４０と目標マッチング回転数Ｄ２６０とを用いてポンプ吸収トルク指令値Ｄ２８０を求める。ファン馬力演算ブロック２８０は、エンジン回転数Ｄ１０７を用いてファン馬力を演算する。なお、ファン馬力は、先に述べた計算式を用いて求められるものである。減算部２８１は、エンジン目標出力演算ブロック１４０で求められたエンジン目標出力Ｄ２４０から、この求めたファン馬力を減算した出力（ポンプ目標吸収馬力）を、ポンプ目標マッチング回転数およびトルク演算ブロック２８２に入力する。この目標マッチング回転数およびトルク演算ブロック２８２には、さらに、目標マッチング回転数演算ブロック１６０で求められた目標マッチング回転数Ｄ２６０が入力される。目標マッチング回転数Ｄ２６０は、油圧ポンプ１８の目標マッチング回転数（ポンプ目標マッチング回転数）とされる。そして、ポンプ目標マッチング回転数およびトルク演算ブロック２８２では、次式に示すように、
ポンプ目標マッチングトルク
＝（６０×１０００×（エンジン目標出力−ファン馬力））
／（２π×目標マッチング回転数）
が演算される。求められたポンプ目標マッチングトルクは、ポンプ吸収トルク演算ブロック２８３に出力される。
【００５３】
ポンプ吸収トルク演算ブロック２８３は、ポンプ目標マッチング回転数およびトルク演算ブロック２８２から出力されたポンプ目標マッチングトルクと、回転センサにて検出されたエンジン回転数Ｄ１０７と、目標マッチング回転数Ｄ２６０とが入力される。ポンプ吸収トルク演算ブロック２８３では、次式に示すように
ポンプ吸収トルク＝ポンプ目標マッチングトルク
−Ｋｐ×（目標マッチング回転数−エンジン回転数）
が演算され、演算結果であるポンプ吸収トルク値Ｄ２８０が出力される。ここで、Ｋｐは、制御ゲインである。
【００５４】
このような制御フローが実行されることにより、実際のエンジン回転数Ｄ１０７が目標マッチング回転数Ｄ２６０に比して大きい場合には、上記の式からわかるようにポンプ吸収トルク指令値Ｄ２８０は増加し、逆に、実際のエンジン回転数Ｄ１０７が目標マッチング回転数Ｄ２６０に比して小さい場合には、ポンプ吸収トルク指令値Ｄ２８０は減少することになる。一方、エンジンの出力は、エンジン目標出力Ｄ２４０が上限となるように制御しているため、結果的にエンジン回転数は、目標マッチング回転数Ｄ２６０近傍の回転数で安定しエンジン１７が駆動することになる。
【００５５】
ここで、エンジン回転数指令値演算ブロック１７０では、エンジン回転数指令値Ｄ２７０の最小値は、上述したように、
エンジン回転数指令値＝目標マッチング回転数ｎｐ１を無負荷回転数に変換した回転数ｎｐ１ａ＋下限回転数オフセット値Δｎｍ
の演算によって求められる値となり、目標マッチング回転数に対してエンジンのドループ線は、最低でも下限回転数オフセット値Δｎｍが加味された高い回転数のところで設定される。このため、本実施の形態１によれば、油圧ポンプ１８の実際の吸収トルク（ポンプ実吸収トルク）がポンプ吸収トルク指令に対して多少ばらついた場合でも、ドループ線にはかからない範囲でマッチングすることになり、エンジン１７のマッチング回転数が多少変動してもエンジン出力をエンジン出力指令値曲線ＥＬ上で制限しエンジン目標出力を一定に制御しているため、実際の吸収トルク（ポンプ実吸収トルク）がポンプ吸収トルク指令に対してばらつきを生じてもエンジン出力の変動を小さくすることが可能となる。この結果、燃費のばらつきも小さく抑えることができ、油圧ショベル１の燃費に対する仕様を満たすことができる。燃費に対する仕様とは、例えば、従来の油圧ショベルに比べて、燃費を１０％低減可能といった仕様である。
【００５６】
すなわち、図１５に示すように、従来は、ポンプ吸収トルク線ＰＬと目標マッチング回転数との交点を目標マッチング点ＭＰ１としていたため、油圧ポンプの逐次の性能のばらつきが大きい場合、それに伴ってドループ線ＤＬ上でエンジン出力のばらつきも大きくなる。この結果、燃費のばらつきが大きく、油圧ショベル１の燃費に対する仕様を満たすことが難しい場合があった。これに対し、本実施の形態１によれば、図１６に示すように、ポンプ吸収トルク線ＰＬと、等馬力曲線であってエンジン出力の上限を示すエンジン出力指令値曲線ＥＬとの交点を目標マッチング点ＭＰ１としており、油圧ポンプの逐次の性能のばらつきが大きい場合でも目標マッチング点ＭＰ１は、エンジン出力指令値曲線ＥＬに沿ってばらつくこととなる。このため、エンジン出力のばらつきがほとんど無くなり、結果として、燃費のばらつきもほとんど無くなる。
【００５７】
なお、従来のエンジン制御では、図１７に示すように、エンジン１７がアイドリング回転を行っている状態からエンジン回転数を上昇させて目標マッチング点ＭＰ１にエンジン出力が移動する過渡時は、エンジン出力は最大出力トルク線ＴＬ、および目標マッチング点ＭＰ１を通るドループ線ＤＬを経由していたため、過渡時のエンジン出力は、図１７中の囲み部Ａで示すように目標エンジン出力よりも過剰に大きなものとなり、燃費が悪化していた。これに対し、本実施の形態１によれば、図１８に示すように、ポンプ吸収トルク線ＰＬとエンジン出力指令値曲線ＥＬとの交点を目標マッチング点ＭＰ１としているため、過渡時は、図１８中の囲み部Ａ´で示すように、エンジン出力はエンジン出力指令値曲線ＥＬに沿って目標マッチング点ＭＰ１に移行する。このため、過渡時であっても目標エンジン出力と同じエンジン出力が得られるため、燃費が向上する。
【００５８】
（実施の形態２）
実施の形態１では、上部旋回体２が油圧モータ（旋回油圧モータ３１）で旋回し、作業機３が全て油圧シリンダ１４，１５，１６で駆動するような構造を有した油圧ショベル１に対して本発明を適用した例であったが、本実施の形態２は、上部旋回体５を電動旋回モータで旋回させる構造を有した油圧ショベル１に対して本発明を適用した例である。以下、油圧ショベル１は、ハイブリッド油圧ショベル１として説明する。以下、特に断りがないかぎり、本実施の形態２と実施の形態１は共通する構成をとる。
【００５９】
ハイブリッド油圧ショベル１は、実施の形態１に示した油圧ショベル１と比較すると、上部旋回体２、下部走行体４、作業機３といった主要構成は同一である。しかし、ハイブリッド油圧ショベル１は、図１９に示すように、エンジン１７の出力軸には、油圧ポンプ１８とは別に発電機１９が機械的に結合されており、エンジン１７を駆動することで、油圧ポンプ１８および発電機１９が駆動する。なお、発電機１９は、エンジン１７の出力軸に機械的に直結されていてもよいし、エンジン１７の出力軸にかけられたベルトやチェーンなどの伝達手段を介して回転駆動するものであってもよい。また、油圧駆動系の油圧モータの旋回油圧モータ３１に替えて、電動駆動する旋回モータ２４を用い、それに伴い電動駆動系として、キャパシタ２２、インバータ２３を備える。発電機１９によって発電される電力あるいはキャパシタ２２から放電される電力が、電力ケーブルを介して旋回モータ２４に供給されて上部旋回体５を旋回させる。すなわち、旋回モータ２４は、発電機１９から供給（発電）される電気エネルギーまたはキャパシタ２２から供給（放電）される電気エネルギーで力行作用することで旋回駆動し、旋回減速する際に旋回モータ２４は回生作用することによって電気エネルギーをキャパシタ２２に供給（充電）する。この発電機１９としては、たとえばＳＲ（スイッチドリラクタンス）モータが用いられる。発電機１９は、エンジン１７の出力軸に機械的に結合されており、エンジン１７の駆動によって発電機１９のロータ軸を回転させることになる。キャパシタ２２は、たとえば、電気二重層キャパシタが用いられる。キャパシタ２２に代えて、ニッケル水素バッテリやリチウムイオンバッテリであってもよい。旋回モータ２４には、回転センサ２５が設けられ、旋回モータ２４の回転速度を検出し、電気信号に変換して、インバータ２３内に設けられたハイブリッドコントローラ２３ａに出力する。旋回モータ２４としては、例えば埋め込み磁石同期電動機が用いられる。回転センサ２５として、たとえばレゾルバやロータリーエンコーダなどが用いられる。なお、ハイブリッドコントローラ２３ａは、ＣＰＵ（数値演算プロセッサなどの演算装置）やメモリ（記憶装置）などで構成されている。ハイブリッドコントローラ２３ａは、発電機１９や旋回モータ２４、キャパシタ２２およびインバータ２３に備えられた、サーミスタや熱電対などの温度センサによる検出値の信号を受けて、キャパシタ２２などの各機器の過昇温を管理するとともに、キャパシタ２２の充放電制御や発電機１９による発電・エンジンのアシスト制御、旋回モータ２４の力行・回生制御を行う。
【００６０】
この実施の形態２によるエンジン制御は、実施の形態１とほぼ同じであり、以下、異なる制御部分について説明する。図２０は、このハイブリッド油圧ショベル１のエンジン制御の全体制御フローを示している。図５に示した全体制御フローと異なるところは、旋回油圧モータ３１の旋回回転数Ｄ１０１に替えて、旋回モータ２４の旋回モータ回転数Ｄ３０１、旋回モータトルクＤ３０２を入力パラメータとし、さらに発電機出力Ｄ３０３を入力パラメータとして加えている。旋回モータ２４の旋回モータ回転数Ｄ３０１は、無負荷最大回転数演算ブロック１１０およびエンジン最大出力演算ブロック１３０、さらにマッチング最小回転数演算ブロック１５０に入力される。旋回モータトルクＤ３０２は、エンジン最大出力演算ブロック１３０に入力される。また、発電機出力Ｄ３０３は、エンジン最大出力演算ブロック１３０、マッチング最小回転数演算ブロック１５０、目標マッチング回転数演算ブロック１６０、およびポンプ吸収トルク指令値演算ブロック１８０に入力される。
【００６１】
図２１は、図６に対応する、実施の形態２における無負荷最大回転数演算ブロック１１０の制御フローを示している。電気駆動の旋回モータ２４を搭載したハイブリッド油圧ショベル１は、旋回の駆動源として油圧を必要としない。このため、油圧ポンプ１８から吐出される作動油のうち、旋回の駆動分の油圧ポンプ１８からの作動油吐出流量を減らしてもよい。したがって、燃料調整ダイヤル２８（スロットルダイヤルＤ１０２）の設定値からスロットルダイヤル・無負荷回転数変換テーブル２１３によって求められる無負荷回転数から、旋回モータ回転数Ｄ３０１から旋回モータ回転数・無負荷回転数削減量変換テーブル３１０によって求められる無負荷回転数削減量を減算部３１１によって減じ、得られた回転数を無負荷最大回転数Ｄ２１０の候補値としている。なお、最大値選択部（ＭＡＸ選択）３１３は、無負荷回転数削減量が燃料調整ダイヤル２８（スロットルダイヤルＤ１０２）の設定値から求められる無負荷最大回転数よりも大きく、最大値選択部３１３へ入力される値が負の値となって、無負荷回転数リミット値選択ブロック２１０が出力する無負荷回転数リミット値との比較を行うための最小値選択部（ＭＩＮ選択）３１４を通った結果、無負荷最大回転数が負の値にならないように、最大値選択部３１３でゼロ値３１２との最大値選択を行い、最小値選択部３１４へ負の値が与えられないようにしている。
【００６２】
図２２は、図８に対応する、実施の形態２におけるエンジン最大出力演算ブロック１３０の制御フローを示している。このエンジン最大値出力演算ブロック１３０では、旋回モータ回転数Ｄ３０１および旋回モータトルクＤ３０２を入力パラメータとして用いて旋回馬力演算ブロック３３０が旋回馬力を演算し、エンジン回転数Ｄ１０７を用いてファン馬力演算ブロック３３５がファン馬力を演算する。旋回馬力とファン馬力は、それぞれ減算部３３１および加算部３３６を介して、ポンプ出力リミット値に加算される。また、発電機１９の発電機出力Ｄ１０７は、減算部３３４を介してポンプ出力リミット値に加算される。なお、旋回馬力は、次式、
旋回馬力（ｋＷ）＝２π÷６０×旋回モータ回転数×旋回モータトルク÷１０００×係数（設定値）
を演算することで求めることができる。なお、旋回馬力および発電機出力のポンプ出力リミット値への加算は、図２２に示すように減算となっている。ハイブリッド油圧ショベル１は、エンジン１７という駆動源とは異なる電気という駆動源で電動駆動する旋回モータ２４を用いるので、旋回馬力を求めてポンプ出力リミット値から旋回分を減算することが必要である。発電機出力は、発電機１９が発電するときは、値の正負の符号を負と定義しており、最小値選択部３３３で、ゼロ値３３２との比較が行われ、ポンプ出力リミット値に対して、負の値を減算するから実質的に加算となる。発電機１９がエンジン１７の出力アシストを行う場合は、発電機出力は、値の正負は正となる。発電機１９が発電する時は、発電機出力は、負の値であるため、ゼロ値３３２との最小値選択を行った後に、ポンプ出力リミットから負の発電機出力を減算し、実質的にポンプ出力リミットに発電機出力を加算することとなる。すなわち、発電機出力Ｄ３０３が負の値となったときのみに加算が行われる。発電機１９によるエンジン１７のアシストは、エンジン回転数を、ある所定の回転数から高い回転数に上昇させる必要があるときに作業機３の応答性を高めるために行われるが、このときのエンジン出力としてエンジン１７のアシスト分の出力を抜いてしまうと、作業機３の応答性の改善に繋がらないため、エンジン１７をアシストしたからといってエンジン最大出力を減じることは行わない。つまり、正の発電機出力が最小値選択部３３３に入力されても、ゼロ値３３２との最小値選択により、最小値選択部３３３からはゼロが出力され。ポンプ出力リミットから減算が行われることなく、エンジン最大出力Ｄ２３０が求められる。
【００６３】
図２３は、図１０に対応する、実施の形態２におけるマッチング最小回転数演算ブロック１５０の制御フローを示している。発電機１９は、最大に出力できるトルクの限界値（発電機最大トルク）が設定されているため、ある程度大きな出力で発電を行うには、エンジン回転数を上昇させる必要がある。このため、随時に要求される発電機出力の大きさから、最低限上昇させなければならないエンジン回転数を、発電機出力・マッチング回転数変換テーブル３５１を用いて求め、この求められたエンジン回転数をマッチング最小回転数Ｄ１５０の候補値として最大値選択部（ＭＡＸ選択）３５２に出力する。なお、発電機出力Ｄ３０３の後段に配置されるゲート３５０は、発電機出力Ｄ３０３が負であるので、発電機出力Ｄ３０３を正の値に変換するために設けられている。
【００６４】
図２４は、図１１に対応する、実施の形態２における目標マッチング回転数演算ブロック１６０の制御フローを示している。まず、目標マッチング回転数Ｄ２６０は、基本的に、エンジン目標出力と目標マッチングルートＭＬとの交点における回転数であるが、エンジン最大出力Ｄ２３０は、図２２に示すようにポンプ出力リミット値にファン馬力と発電機出力とを加算した値であり、このエンジン最大出力Ｄ２３０を用いて図９に示すようにエンジン目標出力Ｄ２４０が決定される。さらに、図２４に示すように目標マッチング回転数演算ブロック１６０にエンジン目標出力Ｄ２４０が入力されて、目標マッチング回転数Ｄ２６０が決定される。また、発電機１９が要求される発電機出力Ｄ３０３によって目標マッチング回転数Ｄ２６０の値は変化する。
【００６５】
ここで、発電機１９は、小さな発電トルクで発電を行うと効率が悪い。このため、発電機１９が、発電を行う場合、予め設定した最小発電トルク以上で発電を行うように制御する。この結果、発電機１９が発電しない状態（発電オフ）から発電する状態（発電オン）に切り替わる際に、発電のオンとオフが最小発電トルクを境として切り替わるため発電機出力は不連続に変化する。つまり、エンジン目標出力Ｄ２４０と目標マッチングルートＭＬとの交点でマッチング点を定めることから、この発電機出力Ｄ３０３の不連続な変化に応じて、発電オン／オフの切り替えで目標マッチング回転数Ｄ２６０が大きく変動してしまう。
【００６６】
このため、目標マッチング回転数演算ブロック１６０は、最小発電出力演算ブロック３６２がエンジン回転数Ｄ１０７を用いて、次式、
最小発電出力（ｋＷ）＝２π÷６０×エンジン回転数×最小発電トルク（値が負の設定値）÷１０００
を演算し最小発電出力を求めて、要求される発電機出力が求められた最小発電出力よりも小さい場合、最小発電出力に対して足りない出力分をエンジン目標出力に加算部３６５によって加算し、この加算したエンジン目標出力を用いて、エンジン目標出力・目標マッチング回転数変換テーブル２６０によって目標マッチング回転数の候補値として演算し、発電オン／オフに伴う回転数変動を防止する。なお、発電機出力Ｄ３０３の後段の最小値選択部（ＭＩＮ選択）３６１は、要求される発電機出力がない場合（エンジン１７の出力アシストを行う場合など）にゼロ出力を行うためにゼロ値３６０との比較を行う。したがって、エンジン目標出力Ｄ２４０に何も加算しないようになる。また、最大値選択部（ＭＡＸ選択）３６４は、要求される発電機出力が最小発電出力以上である場合に最小発電出力に不足はないことから、エンジン目標出力Ｄ２４０に加算は不要となる。よって、最大値選択部３６４に負の値が入力され、ゼロ値３６３との比較で最大値であるゼロが選択されて、最大値選択部３６４はゼロ出力する。
【００６７】
図２５は、図１３に対応する、実施の形態２におけるポンプ吸収トルク指令値演算ブロック１８０の制御フローを示している。この場合、エンジン目標出力Ｄ２４０からファン馬力のみでなく、発電機出力Ｄ３０３を減算した出力（ポンプ目標吸収馬力）を、ポンプ目標マッチング回転数およびトルク演算ブロック２８２に出力する。なお、要求される発電機出力の値の正負は、負であるから、最小値選択部（ＭＩＮ選択）３８１でゼロ値３８０との比較で最小値が選択されて、選択された値が演算部３８２によってエンジン目標出力Ｄ２４０に加算されるということは、実質、エンジン目標出力Ｄ２４０から発電機出力Ｄ３０３を減算することになる。
【００６８】
ここで、上述した目標マッチング回転数演算ブロック１６０によって演算される目標マッチング回転数Ｄ２６０は、図２６に示すように、発電オフの場合は、発電オフの場合におけるエンジン目標出力Ｄ２４０を示すエンジン出力指令値曲線ＥＬａと目標マッチングルートＭＬとの交点が目標マッチング点Ｍａとなり、そのとき目標マッチング回転数ｎｐａとなる。また、最小発電出力Ｐｍの発電が行われる場合は、最小発電出力Ｐｍを満たすためのエンジン目標出力Ｄ２４０を示すエンジン出力指令値曲線ＥＬｂとなり、エンジン出力指令値曲線ＥＬｂと目標マッチングルートＭＬとの交点が目標マッチング点Ｍｂとなり、そのとき目標マッチング回転数ｎｐａ’となる。
【００６９】
図２４に示したエンジン制御を行わなければ、最小発電出力Ｐｍ未満の発電では実際の発電出力が小さいため、発電のオン／オフによって目標マッチング点Ｍａ，Ｍｂ間を頻繁に移行し、その際、目標マッチング回転数も頻繁に変化する。この実施の形態２では、最小発電出力Ｐｍ未満の発電である場合、発電オフの際は予め目標マッチング回転数をｎｐａ’にしているため、発電のオン／オフによって目標マッチング回転数が変動することがない。そして、発電オフ時の目標マッチング点は、エンジン出力指令値曲線ＥＬａと目標マッチング回転数ｎｐａ’との交点Ｍａ’となる。したがって、図２４に示したエンジン制御を行わなければ、発電機出力の増大とともに、マッチング点がＭａ→Ｍｂ→Ｍｃのように移行してしまうが、この実施の形態２では、発電機出力の増大とともに、マッチング点はＭａ’→Ｍｂ→Ｍｃのように移行し、発電のオンオフが切り替わる程度の発電機出力の場合に目標マッチング回転数の変動はなく、ハイブリッド油圧ショベル１のオペレータが違和感を感じることがなくなる。
【符号の説明】
【００７０】
１  油圧ショベル、ハイブリッド油圧ショベル
２  車両本体
３  作業機
４  下部走行体
５  上部旋回体
１１  ブーム
１２  アーム
１３  バケット
１４  ブームシリンダ
１５  アームシリンダ
１６  バケットシリンダ
１７  エンジン
１８  油圧ポンプ
１８ａ  斜板角センサ
１９  発電機
２０  コントロールバルブ
２０ａ  ポンプ圧検出部
２１  走行モータ
２２  キャパシタ
２３  インバータ
２３ａ  ハイブリッドコントローラ
２４  旋回モータ
２５  回転センサ
２６  操作レバー
２７  レバー操作量検出部
２８  燃料調整ダイヤル
２９  モード切替部
３０  エンジンコントローラ
３１  旋回油圧モータ
３２  コモンレール制御部
３３  ポンプコントローラ
【図１】
0005222975.tif 000002
【図２】
0005222975.tif 000003
【図３】
0005222975.tif 000004
【図４】
0005222975.tif 000005
【図５】
0005222975.tif 000006
【図６】
0005222975.tif 000007
【図７】
0005222975.tif 000008
【図８】
0005222975.tif 000009
【図９】
0005222975.tif 000010
【図１０】
0005222975.tif 000011
【図１１】
0005222975.tif 000012
【図１２】
0005222975.tif 000013
【図１３】
0005222975.tif 000014
【図１４】
0005222975.tif 000015
【図１５】
0005222975.tif 000016
【図１６】
0005222975.tif 000017
【図１７】
0005222975.tif 000018
【図１８】
0005222975.tif 000019
【図１９】
0005222975.tif 000020
【図２０】
0005222975.tif 000021
【図２１】
0005222975.tif 000022
【図２２】
0005222975.tif 000023
【図２３】
0005222975.tif 000024
【図２４】
0005222975.tif 000025
【図２５】
0005222975.tif 000026
【図２６】
0005222975.tif 000027
【図２７】
0005222975.tif 000028
【図２８】
0005222975.tif 000029
【図２９】
0005222975.tif 000030
【図３０】
0005222975.tif 000031