(58)【調査した分野】(Int.Cl.,DB名)
前記エンジン目標出力演算部は、前記エンジン出力減少許容情報が生成されている場合、エンジン目標出力が増大する方向の演算処理を行わないことを特徴とする請求項1〜4のいずれか一つに記載の作業機械のエンジン制御装置。
【発明を実施するための形態】
【0018】
以下、添付図面を参照してこの発明を実施するための形態について説明する。
【0019】
(実施の形態1)
[全体構成]
まず、
図1および
図2は、作業機械としての一例である油圧ショベル1の全体構成を示している。この油圧ショベル1は、車両本体2と作業機3とを備えている。車両本体2は、下部走行体4と上部旋回体5とを有する。下部走行体4は、一対の走行装置4aを有する。各走行装置4aは、履帯4bを有する。各走行装置4aは、右走行モータと左走行モータ(走行モータ21)とによって履帯4bを駆動することによって油圧ショベル1を走行あるいは旋回させる。
【0020】
上部旋回体5は、下部走行体4上に旋回可能に設けられ、旋回油圧モータ31が駆動することによって旋回する。また、上部旋回体5には、運転室6が設けられる。上部旋回体5は、燃料タンク7と作動油タンク8とエンジン室9とカウンタウェイト10とを有する。燃料タンク7は、エンジン17を駆動するための燃料を貯留する。作動油タンク8は、油圧ポンプ18からブームシリンダ14などの油圧シリンダや旋回油圧モータ31、走行モータ21などの油圧機器へ吐出される作動油を貯留する。エンジン室9は、エンジン17や油圧ポンプ18などの機器を収納する。カウンタウェイト10は、エンジン室9の後方に配置される。
【0021】
作業機3は、上部旋回体5の前部中央位置に取り付けられ、ブーム11、アーム12、バケット13、ブームシリンダ14、アームシリンダ15、およびバケットシリンダ16を有する。ブーム11の基端部は、上部旋回体5に回転可能に連結される。また、ブーム11の先端部は、アーム12の基端部に回転可能に連結される。アーム12の先端部は、バケット13に回転可能に連結される。ブームシリンダ14、アームシリンダ15、およびバケットシリンダ16は、油圧ポンプ18から吐出された作動油によって駆動する油圧シリンダである。ブームシリンダ14は、ブーム11を動作させる。アームシリンダ15は、アーム12を動作させる。バケットシリンダ16は、バケット13を動作させる。
【0022】
図2において、油圧ショベル1は、駆動源としてのエンジン17、油圧ポンプ18を有する。エンジン17としてディーゼルエンジンが用いられ、油圧ポンプ18として可変容量型油圧ポンプ(例えば斜板式油圧ポンプ)が用いられる。エンジン17の出力軸には、油圧ポンプ18が機械的に結合されており、エンジン17を駆動することで、油圧ポンプ18が駆動する。
【0023】
油圧駆動系では、車両本体2に設けられた運転室6内に、左右の走行装置4aを駆動する図示しない走行用レバーと、作業機3や上部旋回体5などを駆動する操作レバー26R,26Lとがそれぞれ設けられる。操作レバー26Rの上下左右の操作は、それぞれブームシリンダ14およびバケットシリンダ16の伸長・収縮に対応して供給する作動油の供給量を設定する。操作レバー26Lの上下左右の操作は、それぞれアームシリンダ15および上部旋回体5を駆動する旋回油圧モータ31へ供給する作動油の供給量を設定する。操作レバー26R,26Lの操作量は、レバー操作量検出部27によって電気信号に変換される。レバー操作量検出部27は、圧力センサによって構成される。操作レバー26R,26Lの操作に応じて発生するパイロット油圧を圧力センサが検知し、圧力センサが出力する電圧等をレバー操作量に換算することによってレバー操作量を求める。レバー操作量は、電気信号としてポンプコントローラ33へ出力される。なお、操作レバー26R,26Lが電気式レバーである場合には、レバー操作量検出部27は、ポテンショメータなどの電気的検出手段によって構成され、レバー操作量に応じて発生する電圧等をレバー操作量に換算してレバー操作量を求める。
【0024】
運転室6内には、燃料調整ダイヤル(スロットルダイヤル)28、モード切替部29、およびワンタッチパワーアップボタン29aが操作レバー26Lの上部に設けられる。なお、ワンタッチパワーアップボタン29aは、操作レバー26Lの上部以外に独立して設置されてもよい。燃料調整ダイヤル(スロットルダイヤル)28は、エンジン17への燃料供給量を設定するためのスイッチであり、燃料調整ダイヤル(スロットルダイヤル)28の設定値は、電気信号に変換されてエンジンコントローラ30に出力される。
【0025】
エンジンコントローラ30は、CPU(数値演算プロセッサ)などの演算装置やメモリ(記憶装置)で構成される。エンジンコントローラ30は、燃料調整ダイヤル(スロットルダイヤル)28の設定値に基づいて、制御指令の信号を生成し、コモンレール制御部32が制御信号を受信し、エンジン17への燃料噴射量を調整する。すなわち、エンジン17は、コモンレール式による電子制御が可能なエンジンであり、燃料噴射量を適切にコントロールすることで狙いとする出力を出すことが可能であり、ある瞬間のエンジン回転数における出力可能なトルクを自由に設定することが可能である。
【0026】
モード切替部29は、油圧ショベル1の作業モードをパワーモードまたはエコノミーモードに設定する部分であり、たとえば運転室6中に設けられる操作ボタンやスイッチ、またはタッチパネルで構成され、油圧ショベル1のオペレータがそれらの操作ボタンなどを操作することで作業モードを切り替えることができる。パワーモードとは、大きな作業量を維持しながら燃費を抑えたエンジン制御およびポンプ制御を行う作業モードである。エコノミーモードとは、さらに燃費を抑えつつ軽負荷作業で作業機3の動作速度を確保するようにエンジン制御およびポンプ制御を行う作業モードである。このモード切替部29による設定(作業モードの切り替え)では、電気信号がエンジンコントローラ30、ポンプコントローラ33に出力される。なお、パワーモードでは、エンジン17の回転数および出力トルクが比較的高い領域でエンジン17の出力トルクと油圧ポンプ18の吸収トルクとをマッチングさせる。また、エコノミーモードでは、パワーモードの場合と比較して低いエンジン出力でマッチングさせる。
【0027】
ワンタッチパワーアップボタン29aは、一時的なエンジン出力の増大を指示するボタンである。ワンタッチパワーアップボタン29aが押下されると、例えば、5〜10秒程度の期間、ワンタッチパワーアップ信号がエンジンコントローラ30およびポンプコントローラ33に出力される。エンジンコントローラ30およびポンプコントローラ33は、ワンタッチパワーアップ信号が入力されている間、一時的にエンジン出力を増大させる。
【0028】
ポンプコントローラ33は、エンジンコントローラ30、モード切替部29、ワンタッチパワーアップボタン29a、レバー操作量検出部27から送信された信号を受信して、油圧ポンプ18の斜板角を傾倒制御して油圧ポンプ18からの作動油の吐出量を調整するための制御指令の信号を生成する。なお、ポンプコントローラ33には、油圧ポンプ18の斜板角を検出する斜板角センサ18aからの信号が入力される。斜板角センサ18aが斜板角を検出することで、油圧ポンプ18のポンプ容量を演算することができる。油圧ポンプ18からコントロールバルブ20の間の配管には、油圧ポンプ18のポンプ吐出圧力を検出するためのポンプ圧検出部20aが設けられている。検出されたポンプ吐出圧力は、電気信号に変換されてポンプコントローラ33に入力される。なお、エンジンコントローラ30とポンプコントローラ33とは、相互に情報の授受が行われるようにCAN(Controller Area Network)のような車内LANで接続されている。
【0029】
[エンジン制御の概要]
まず、
図3および
図4に示すトルク線図を参照してエンジン制御の概要について説明する。エンジンコントローラ30は、レバー操作量、作業モードおよび燃料調整ダイヤル(スロットルダイヤル)28の設定値、上部旋回体5の旋回速度(旋回回転数)などの情報(運転状態を示す信号)を取得し、エンジン出力指令値を求める。このエンジン出力指令値は、トルク線図上の等馬力曲線(エンジン出力指令値曲線)EL1となり、エンジンの出力を制限する曲線である。
【0030】
そして、
図3に示すように、作業機3に負荷がかかっている場合、エンジン出力をドループ線に拘束させず、エンジン出力指令値曲線EL1とポンプ吸収トルク線PLとの交点(目標マッチング点)MP1でエンジン出力と油圧ポンプ出力とをマッチングさせて作業機3を動作させる。なお、この目標マッチング点MP1は、目標マッチングルートML上にもたせることが好ましい。この目標マッチング点MP1でのエンジン回転数は、目標マッチング回転数np1であり、たとえば、
図3では1000rpm近傍となる。これにより、作業機3は十分な出力を得ることができるとともに、エンジン17は低回転数で駆動するため、燃料消費を低く抑えることができる。
【0031】
ここで、
図4に示すように、作業機3にさらに負荷がかかった場合、エンジン目標出力が増大し、等馬力のエンジン実出力HP11を示すエンジン出力指令値曲線EL1から等馬力のエンジン実出力HP13(HP11<HP13)を示すエンジン出力指令値曲線EL3に移行する。すると、目標マッチング点MP1は、マッチングルートML上でエンジン出力増大方向に移動し、エンジン出力指令値曲線EL3とマッチングルートMLとの交点である目標マッチング点MP3となる。このとき、エンジン実出力(エンジン負荷)が減少すると、この目標マッチング点MP3を通るドループ線に沿ってエンジントルクが減少するとともに、エンジン回転数が増大する。ここで、操作者のレバー操作によってレバー操作量が減少すると、このレバー操作量の減少に伴って、エンジン目標出力が減少する。例えば、
図4では、エンジン目標出力が、エンジン出力指令値曲線EL3からエンジン出力指令値曲線EL1に移行する。
【0032】
このように、レバー操作量の減少に伴うエンジン実出力が減少すると、この減少に対応したエンジン目標出力を下げるようにしている。この結果、
図4では、目標マッチング点MP3から目標マッチング点MP1に移行し、これに伴って、エンジン回転数は、np3からnp1に大幅に減少し、燃費を向上させることができる。なお、従来は、レバー操作量の減少に伴うエンジン実出力の減少に対応してエンジン目標出力が下がらないため、レバー操作量の減少に伴ってエンジン実出力が減少しても目標マッチング点MP3を維持している。この結果、レバー操作量の減少に伴ってエンジン実出力が減少すると、目標マッチング点MP1を通るドループ線と、このときのエンジン実出力HP11に対応するエンジン出力指令値曲線EL1との交点PP1が動作点となる。このときのエンジン回転数は、np1よりも高く、さらにnp3よりも高くなり、燃費が悪化していた。
【0033】
ところで、エンジン目標出力が変化しないで、作業機3の負荷が抜けた場合であって、作業機3の油圧シリンダ14,15,16への作動油流量が必要な場合、すなわち作業機3の動作速度の確保が必要な場合、エンジンコントローラ30は、レバー操作量、上部旋回体5の旋回回転数、燃料調整ダイヤル(スロットルダイヤル)28の設定値等の情報に対応した無負荷最大回転数np2(たとえば
図3では、2050rpm近傍)を決定し、目標マッチング回転数np1と無負荷最大回転数np2との間のエンジン回転数範囲内でエンジンドループを制御してエンジン17を駆動させる。このような制御を行うことによって、作業機3の負荷がかかった状態から負荷が抜けた状態に移行した場合、低回転側の目標マッチング点MP1から高回転側のマッチング点MP2に移行することから、油圧ポンプ18から吐き出される作動油流量を十分に油圧シリンダ14,15,16に供給することができ、作業機3の動作速度を確保することができる。また、エンジン出力指令値曲線ELによってエンジン出力が制限されるため、無駄なエネルギーを消費しない。なお、無負荷最大回転数np2は、エンジンが出力可能な最大回転数に限らない。
【0034】
ここで、エンジン目標出力が変化しないで、作業機3の負荷がさらに抜けた場合、そのままエンジン17を高回転域で駆動させると燃料が消費され燃費が悪化することとなる。したがって、負荷が抜けた場合であって、たとえばバケット13のみの動作のように、油圧ポンプ18からの作動油の吐出流量および吐出圧力を多く必要としない場合、すなわちポンプ容量に余裕がある場合、
図5に示すように、高回転域のドループ線DLを低回転域にシフトさせる制御を行う。上記のように、ポンプ容量は、斜板角センサ18aによって検出され、この検出値の大小によってドループ線DLをシフトする。たとえば、ポンプ容量が所定値よりも大きいと検出された場合には作動油流量を必要としているため、ドループ線DLを高回転域にシフトさせてエンジン回転数を上げ、ポンプ容量が所定値よりも小さいと検出された場合には作動油流量を必要としていないため、ドループ線DLを低回転域にシフトさせてエンジン回転数を下げる。このような制御を行うことによって、高回転域でのエンジン駆動による無駄な燃料消費を抑えることができる。
【0035】
[エンジン制御の詳細]
図6は、エンジンコントローラ30あるいはポンプコントローラ33による全体制御フローを示している。エンジンコントローラ30あるいはポンプコントローラ33は、最終的にエンジン制御指令としてのエンジン回転数指令値とエンジン出力指令値を演算し、ポンプ制御指令としてポンプ吸収トルク指令値を演算する。
【0036】
無負荷最大回転数演算ブロック110は、
図7に示した詳細制御フローによって、エンジン回転数指令値の上限値となる値である無負荷最大回転数D210(np2)を演算する。油圧ポンプ18のポンプ容量が最大の状態では、油圧ポンプ18の流量(油圧ポンプ吐出流量)はエンジン回転数とポンプ容量との積であり、油圧ポンプ18の流量(油圧ポンプ吐出流量)はエンジン回転数に比例するため、無負荷最大回転数D210と油圧ポンプ18の流量(ポンプ最大吐出量)は比例関係にあることになる。このため、まず、無負荷最大回転数D210の候補値として、各レバー値信号D100(レバー操作量)によって求めた無負荷回転数の総和を総和部212によって求める。各レバー値信号D100(各レバー操作量を示す信号)としては、旋回レバー値、ブームレバー値、アームレバー値、バケットレバー値、走行右レバー値、走行左レバー値、サービスレバー値がある。このサービスレバー値は、新たな油圧アクチュエータを接続できる油圧回路を有する場合における、この油圧アクチュエータを操作するレバー操作量を示す値である。各レバー値信号D100は、
図7に示すようなレバー値・無負荷回転数変換テーブル211で無負荷回転数に変換され、この変換された値を総和部212によって求めた総和の無負荷回転数が最小値選択部(MIN選択)214に出力される。
【0037】
一方、無負荷回転数リミット値選択ブロック210は、各レバー値信号D100の操作量、油圧ポンプ18の吐出圧力であるポンプ圧力D104,D105、およびモード切替部29によって設定された作業モードD103の4つの情報を用いて、油圧ショベル1のオペレータが、現在どのような操作パターン(作業パターン)を実行しているかを判定し、予め設定されている操作パターンに対する無負荷回転数リミット値を選択し決定する。この決定された無負荷回転数リミット値は、最小値選択部214に出力される。この操作パターン(作業パターン)の判定とは、たとえば、アームレバーが掘削方向に傾倒しており、ポンプ圧力も、ある設定値よりも高い場合、油圧ショベル1は重掘削作業を実行しようとしていると判定し、旋回レバーが傾倒しているとともにブームレバーが上げ方向に傾倒しているような複合操作の場合、油圧ショベル1はホイスト旋回作業を実行しようとしていると判定するものである。このように、操作パターン(作業パターン)の判定とは、そのときにオペレータが実行しようとしている操作を推定することである。なお、ホイスト旋回作業とは、バケット13で掘削した土砂をブーム11を上げながら上部旋回体5を旋回させ、所望の旋回停止の位置でバケット13の土砂を排土するような作業である。
【0038】
他方、燃料調整ダイヤル28(スロットルダイヤルD102)の設定状態(設定値)からも無負荷最大回転数の候補値を決定する。すなわち、燃料調整ダイヤル28(スロットルダイヤルD102)の設定値を示す信号を受けて、設定値はスロットルダイヤル・無負荷回転数変換テーブル213で、無負荷最大回転数の候補値に変換され、最小値選択部214に出力される。
【0039】
最小値選択部214は、レバー値信号D100から求めた無負荷回転数と無負荷回転数リミット値選択ブロック210で求めた無負荷回転数リミット値とスロットルダイヤルD102の設定値から求めた無負荷回転数との3つの値のなかから最小値を選択し、無負荷最大回転数D210(np2)を出力する。
【0040】
図8はエンジン最小出力演算ブロック120の詳細制御フローである。
図8に示すように、エンジン最小出力演算ブロック120は、エンジン出力指令値の下限となる値であるエンジン最小出力D220を演算する。レバー値・エンジン最小出力変換テーブル220は、無負荷最大回転数の演算と同様に、各レバー値信号D100をエンジン最小出力に変換し、総和部221がこれらの総和を最小値選択部(MIN選択)223に出力する。
【0041】
一方、エンジン最小出力の最大値選択ブロック222は、モード切替部29によって設定される作業モードD103に対応したエンジン最小出力の最大値を最小値選択部223に出力する。最小値選択部223は、各レバー値信号D100に対応したエンジン最小出力の総和と、作業モードD103に対応したエンジン最小出力の最大値とを比較し、最小値を選択してエンジン最小出力D220として出力する。
【0042】
図9はエンジン最大出力演算ブロック130の詳細制御フローである。
図9に示すように、エンジン最大出力演算ブロック130は、エンジン出力指令値の上限となる値であるエンジン最大出力D230を演算する。ポンプ出力リミット値選択ブロック230は、無負荷最大回転数演算ブロック110による演算と同様に、各レバー値信号D100の操作量とポンプ圧力D104,D105と作業モードD103の設定値の情報を用いて、現在の操作パターンを判定し、その操作パターン毎にポンプ出力リミット値を選択する。この選択されたポンプ出力リミット値に、図示しない回転数センサによって検出されたエンジン回転数D107からファン馬力演算ブロック231が演算したファン馬力が加算部233によって加算される。その加算された値(以下、加算値)と、燃料調整ダイヤル28(スロットルダイヤルD102)の設定値に応じてスロットルダイヤル・エンジン出力リミット変換テーブル232によって変換したエンジン出力リミット値とが、最小値選択部(MIN選択)234に出力される。なお、スロットルダイヤル・エンジン出力リミット変換テーブル232は、
図9中に示すようにスロットルダイヤルの設定値を横軸にとり、ダイヤル値に対応するエンジン出力リミット値を縦軸にとる。スロットルダイヤル値が0の時をエンジン出力リミット値の最小値とし、スロットルダイヤル値が大きくなるに従いエンジン出力リミット値を増大させるように設定する。最小値選択部234は、加算値とエンジン出力リミット値のうちの最小値を選択し、エンジン最大出力D230として出力する。なお、ファンとは、エンジン17を冷却するためのラジエータの近傍に設けられたファンであり、ラジエータに向かって空気を送風させるものであり、エンジン17の駆動に連動して回転駆動するものである。なお、ファン馬力は、次式、
ファン馬力=ファン定格馬力×(エンジン回転数/ファン定格時エンジン回転数)^3
を用いて簡易的に演算することで求められる。
【0043】
<エンジン目標出力演算処理>
図10はエンジン目標出力演算ブロック140の詳細制御フローである。
図10に示すように、エンジン目標出力演算ブロック140は、エンジン出力減少許容情報生成ブロック301とエンジン実出力演算ブロック242と、エンジン実出力のラッチ機能ブロック302と、エンジン目標出力演算部303とを有し、エンジン出力指令値であるエンジン目標出力D240を演算する。
【0044】
まず、エンジン目標出力演算部303について説明する。減算部243は、前回演算して求めた前回エンジン目標出力D240から固定値として設定されているエンジン出力加算用オフセット値241を減じる。なお、前回エンジン目標出力D240は、演算出力された前回のエンジン目標出力D240を遅延回路240を介して入力されたものである。減算部244は、この減算した値から、エンジン実出力のラッチ機能ブロック302でラッチ出力を考慮したエンジン実出力D401を減算した偏差を求める。乗算部245は、この偏差に、あるゲイン(−Ki)を乗じた値を乗算し、積分部246がこの乗算値を積分する。加算部247は、この積分値に、エンジン最小出力演算ブロック120で演算して求められたエンジン最小出力D220を加算する。最小値選択部(MIN選択)248は、この加算値と、エンジン最大出力演算ブロック130で演算して求められたエンジン最大出力D230とのうちの最小値をエンジン目標出力D240として出力する。エンジン目標出力D240は、
図6に示すようにエンジン制御指令のエンジン出力指令値として用いられ、エンジン目標出力D240は、
図3〜
図5に示すエンジン出力指令値曲線EL1,EL3を意味する。
【0045】
エンジン実出力演算ブロック242は、エンジンコントローラ30が指令している燃料噴射量とエンジン回転数、大気温度などにより予測したエンジントルクD106と図示しない回転数センサによって検出されたエンジン回転数D107とをもとに、次式
エンジン実出力(kW)=2π÷60×エンジン回転数×エンジントルク÷1000
を用いて演算しエンジン実出力D400を求める。この求めたエンジン実出力D400はエンジン実出力のラッチ機能ブロック302に出力される。上述したように、エンジン実出力のラッチ機能ブロック302は、ラッチ出力を考慮したエンジン実出力D401を演算する。
【0046】
また、エンジン出力減少許容情報生成ブロック301は、レバー値信号(レバー操作総和量)D100、ポンプ圧力D104,D105、およびワンタッチパワーアップ信号D108をもとに、エンジン出力減少許容情報を生成し、エンジン実出力のラッチ機能ブロック302および積分部246に出力する。エンジン出力減少許容情報は、操作レバーによるレバー操作総和量が減少している間、エンジン出力の減少を許容する情報である。エンジン出力減少許容情報は、具体的には、レバー操作総和量減少フラグD300である。エンジン出力減少許容情報生成ブロック301は、操作レバーによるレバー操作総和量D100が減少している間、レバー操作総和量減少フラグD300を立てる演算処理を行うものである。なお、レバー操作総和量D100は、エンジン実出力のラッチ機能ブロック302および積分部246にも出力される。なお、エンジン出力減少許容情報は、上述したレバー操作総和量減少フラグD300のようなフラグに限らず、エンジン出力の減少を許容する信号であってもよいし、エンジン出力の減少を許容するデータを出力するようにしてもよい。以下、エンジン出力減少許容情報の一例としてレバー操作総和量減少フラグD300を用いて説明する。
【0047】
<レバー操作総和量減少フラグ演算処理>
図11に示すように、エンジン出力減少許容情報生成ブロック301は、ヒステリシス処理部304とレバー操作総和量減少フラグ演算処理部305とを有する。
【0048】
<ヒステリシス処理>
図11に示すように、ヒステリシス処理部304は、入力されるレバー操作総和量D100の増加に伴って出力されるレバー操作総和量D100hが一方向の増加のみを許容する直線H1と、入力されるレバー操作総和量D100の減少に伴って出力されるレバー操作総和量D100hが一方向の減少のみを許容する直線H2とが、レバー操作総和量D100の所定量Δh、レバー操作総和量D100方向にずらして配置されるヒステリシス特性を有する。なお、直線H2は、直線H1に対してレバー操作総和量D100がレバー操作総和量D100の所定量Δh分小さい。
【0049】
入力されるレバー操作総和量D100が直線H1上である場合、出力されるレバー操作総和量D100hは増加が許容され、減少する場合には、上述した所定量Δh以上の減少があった場合のみレバー操作総和量D100が減少したとして直線H2に移行する。一方、入力されるレバー操作総和量D100が直線H2上である場合、出力されるレバー操作総和量D100hは減少が許容され、増加する場合には、上述した所定量Δh以上の増加があった場合のみレバー操作総和量D100が増加したとして直線H1上に移行する。ヒステリシス処理部304は、このヒステリシス特性によって変換されたレバー操作総和量D100hをレバー操作総和量減少フラグ演算処理部305に出力する。なお、レバー操作総和量D100が直線H1上にある場合、レバー操作総和量D100は増加状態にあり、レバー操作総和量減少フラグD300は「FALSE」で、フラグが立った状態である。また、レバー操作総和量D100が直線H2上にある場合、レバー操作総和量D100は減少状態にあり、レバー操作総和量減少フラグD300は「TRUE」で、フラグが下がった状態である。すなわち、このヒステリシス処理は、レバー操作総和量減少フラグが立っていない場合、レバー操作総和量の減少変化が所定量Δh以上となった場合にレバー操作総和量減少フラグを立て、レバー操作総和量減少フラグが立っている場合、レバー操作総和量の増大変化が所定量以上となった場合にレバー操作総和量減少フラグを下げる。このようなヒステリシス処理を行うことによってレバー操作総和量減少フラグD300の状態が頻繁に変動する、いわゆるチャタリングを防止できる。
【0050】
<レバー操作総和量減少フラグ演算処理>
レバー操作総和量減少フラグ演算処理部305は、レバー操作総和量減少フラグD300を立てるか否かの演算処理を行う。この演算処理は、
図12に示すように、まず、ワンタッチパワーアップ信号D108が入力中であるか否かを判断する(ステップS101)。ワンタッチパワーアップ信号D108が入力中である場合(ステップS101,Yes)には、レバー操作総和量減少フラグD300を「FALSE」に設定する(ステップS107)。この場合、レバー操作総和量減少フラグD300を「FALSE」に設定するのは、ワンタッチパワーアップが要求される場合、高いエンジン目標出力を設定する必要があるからである。
【0051】
一方、ワンタッチパワーアップ信号D108が入力中でない場合(ステップS101,No)には、さらにポンプ圧力D104,D105が高圧閾値Pthを超えたか否かを判断する(ステップS102)。この高圧閾値Pthは、例えば、リリーフ状態が近い値である。ポンプ圧力D104,D105が高圧閾値Pthを超えた場合(ステップS102,Yes)には、レバー操作総和量減少フラグD300を「FALSE」に設定する(ステップS107)。この場合、レバー操作総和量減少フラグD300を「FALSE」に設定するのは、ポンプ圧が高圧である場合、高いエンジン目標出力を設定する必要があるからである。
【0052】
ポンプ圧力D104,D105が高圧閾値Pthを超えない場合(ステップS102,No)には、さらに、レバー操作総和量減少フラグD300が「FALSE」であるか否かを判断する(ステップS103)。レバー操作総和量減少フラグD300が「FALSE」である場合(ステップS103,Yes)には、レバー操作総和量減少フラグD300が前回のレバー操作総和量減少フラグD300未満であるか否かを判断する(ステップS104)。そして、レバー操作総和量減少フラグD300が前回のレバー操作総和量減少フラグD300未満である場合(ステップS104,Yes)には、レバー操作総和量減少フラグD300を「TRUE」に設定する(ステップS106)。また、レバー操作総和量減少フラグD300が前回のレバー操作総和量減少フラグD300未満でない場合(ステップS104,No)には、レバー操作総和量減少フラグD300を「FALSE」に設定する(ステップS107)。
【0053】
一方、レバー操作総和量減少フラグD300が「FALSE」でない場合(ステップS103,No)には、レバー操作総和量減少フラグD300が前回のレバー操作総和量減少フラグD300より大きいか否かを判断する(ステップS105)。そして、レバー操作総和量減少フラグD300が前回のレバー操作総和量減少フラグD300より大きい場合(ステップS105,Yes)には、レバー操作総和量減少フラグD300を「FALSE」に設定する(ステップS107)。また、レバー操作総和量減少フラグD300が前回のレバー操作総和量減少フラグD300より大きくない場合(ステップS105,No)には、レバー操作総和量減少フラグD300を「TRUE」に設定する(ステップS106)。これらの設定したレバー操作総和量減少フラグD300は、エンジン実出力のラッチ機能ブロック302および積分部246に出力される。
【0054】
<エンジン実出力のラッチ機能処理>
図13に示すように、エンジン実出力のラッチ機能ブロック302では、まず、判断部410が、入力されるエンジン実出力D400が遅延回路412を介して入力される前回のエンジン実出力D401を超えているか否かを判断する。さらに、判断部410は、レバー値信号D100から、全レバーがニュートラルであるか否かを判断する。また、判断部410は、レバー操作総和量減少フラグD300が「TRUE」であるか否かを判断する。
【0055】
入力されるエンジン実出力D400が遅延回路412を介して入力される前回のエンジン実出力D401を超えている場合、または、全レバーがニュートラルである場合、または、レバー操作総和量減少フラグD300が「TRUE」である場合、処理部401が切替スイッチ411を「T」端子に接続する処理を行う。それ以外の場合には、処理部402が切替スイッチ411を「F」端子に接続する処理を行う。「T」端子には、エンジン実出力D400が入力され、「F」端子には、前回のエンジン実出力D401が入力される。
【0056】
したがって、エンジン実出力のラッチ機能ブロック302は、全レバーがニュートラルでなく、レバー操作総和量減少フラグD300が「FALSE」でフラグが下がった増加状態で、エンジン実出力D400が前回のエンジン実出力D401以下で増加していない場合に、前回のエンジン実出力D401をラッチして出力し、それ以外は、入力されるエンジン実出力D400を出力する。
【0057】
<積分部の積分処理>
つぎに、積分部246の積分処理について説明する。
図14に示すように、積分部246による積分処理は、まず、全レバーがニュートラルであるか否かを判断する(ステップS201)。全レバーがニュートラルである(ステップS201,Yes)場合、積分値をリセットする(ステップS205)。
【0058】
全レバーがニュートラルでない(ステップS201,No)場合、レバー操作総和量減少フラグD300が「TRUE」であるか否かを判断する(ステップS202)。レバー操作総和量減少フラグD300が「TRUE」である場合(ステップS202,Yes)には、加算方向の積分を行わず、加算方向以外の積分処理を行う(ステップS203)。一方、レバー操作総和量減少フラグD300が「TRUE」でない場合(ステップS202,No)には、減算方向の積分を行わず、減算方向以外の積分処理を行う(ステップS204)。このような積分処理によって、レバー操作総和量が増大方向の場合にエンジン目標出力が小さくなることがない。また、レバー操作総和量が減少方向の場合にエンジン目標出力が大きくなることがない。特に、レバー操作総和量が減少方向の場合にエンジン目標出力が大きくならないので、無駄なエネルギー消費をなくすことができる。
【0059】
<エンジン目標出力演算処理の一例(その1)>
図15に示すタイムチャートを参照して、エンジン目標出力演算処理の一例について説明する。
図15に示すように、時点t1で、レバー操作総和量が100%にすると、エンジン実出力D400が徐々に増大する。そして、エンジン目標出力D240も、エンジン実出力のラッチ機能ブロック302などによって減少することなく増大する。特に、エンジン実出力D400は、領域E1で一瞬、エンジン実出力が落ちても、エンジン目標出力D240は、減少することなく前回のエンジン目標出力を維持する。
【0060】
その後、時点t2で、レバー操作総和量が50%に減少すると、エンジン出力減少許容情報生成ブロック301によって、レバー操作総和量減少フラグD300が「TRUE」となってフラグが立つとともに、エンジン実出力D400が減少しはじめる。そして、エンジン目標出力D240も、エンジン実出力のラッチ機能ブロック302などによって増大することなく減少する。特に、エンジン実出力D400は、領域E2で一瞬、エンジン実出力が増大しても、エンジン目標出力D240は、増大することなく前回のエンジン目標出力を維持する。なお、従来のエンジン制御装置では、
図15(d)の直線L240に示すように、レバー操作総和量の減少に伴うエンジン実出力D400の減少が生じても、エンジン目標出力は減少しなかった。このため、上述したように、エンジン回転数が高回転状態のままとなり、燃費を向上させることができなかった。
【0061】
このようにして、エンジン目標出力D240は、エンジン実出力D400に応じて設定され、
図4を用いて説明したように、レバー操作総和量が減少する場合、エンジン実出力D400の減少に応じて小さく設定されるため、エンジン回転数も小さくなり、燃費の向上を図ることができる。また、レバー操作総和量の減少に伴うエンジン実出力D400の減少に応じてエンジン目標出力D240は減少し、一瞬のエンジン実出力D400の増大があってもエンジン目標出力D240が増大することがないため、燃費の悪化を防止することができる。
【0062】
<エンジン目標出力演算処理の一例(その2)>
つぎに、
図16に示すタイムチャートを参照して、エンジン目標出力演算処理の他の一例について説明する。
図16では、時点t11で、レバー操作総和量が100%に増大したのち、時点t12で、さらにレバー操作総和量が200%に増大し、その後、時点t13で、再びレバー操作総和量が100%に戻っている。このような状況は、たとえば、時点t11でブーム11を作動し、時点t12〜t13の間で、誤操作などによってバケット13を作動させた場合である。
【0063】
この場合も、時点t13で、レバー操作総和量減少フラグD300が「TRUE」となってフラグが立つ。しかし、時点t14で、ポンプ圧力D104,D105が高圧閾値Pthを超えると、レバー操作総和量減少フラグD300が「FALSE」となってフラグが下がる。この結果、時点t14からエンジン目標出力D240は増大する。
【0064】
このような状況は、時点t11のレバー操作総和量が100%の状態であるため、ポンプ圧もリリーフ状態に近くなる。そして、このレバー操作総和量が100%の状態で、エンジン目標出力を減少することは操作者の意思に反した処理となる。このため、ポンプ圧が高圧閾値Pthを越えた場合には、操作者の意思を反映したエンジン目標出力として高いエンジン実出力D400が出るようにしている。この場合、エンジン目標出力D240は、レバー操作総和量減少フラグD300が立たないときのエンジン目標出力を示す曲線L10とほぼ同じ特性を示して追随し、高いエンジン実出力が得られるようにしている。なお、このようなポンプ圧の高圧閾値Pthによるレバー操作総和量減少フラグD300の「TRUE」解除処理を行わないと、
図16(b)の直線L11に示すように、レバー操作総和量減少フラグD300が「TRUE」の状態を維持する。その結果、エンジン目標出力D240も、
図16(d)に示すように直線L12となって増大せず、高いエンジン実出力D400を得ることができなくなる。
【0065】
次に、
図6に示したマッチング最小回転数演算ブロック150の詳細制御処理について説明する。
図17に示すように、マッチング最小回転数演算ブロック150は、作業時に最低限上昇させなければならないエンジン回転数であるマッチング最小回転数D150を演算する。マッチング最小回転数D150は、各レバー値信号D100を、レバー値・マッチング最小回転数変換テーブル251で変換した各値がマッチング最小回転数D150の候補値となり、それぞれ最大値選択部(MAX選択)255に出力される。
【0066】
一方、無負荷回転数・マッチング回転数変換テーブル252は、目標マッチング回転数np1と同じように、無負荷最大回転数np2で交わるドループ線DLと目標マッチングルートMLとの交点におけるエンジン回転数をマッチング回転数np2’として、無負荷最大回転数演算ブロック110で求められた無負荷最大回転数D210(np2)を変換し出力する(
図21参照)。さらに、このマッチング回転数np2’から低速オフセット回転数253を減算し、その結果得られた値は、マッチング最小回転数D150の候補値として最大値選択部(MAX選択)255に出力される。低速オフセット回転数253を用いる意義とその値の大小については、後述する。
【0067】
また、旋回回転数・マッチング最小回転数変換テーブル250は、旋回回転数D101をマッチング最小回転数D150の候補値として変換して最大値選択部255に出力する。旋回回転数D101は、
図2の旋回油圧モータ31の旋回回転数(速度)をレゾルバやロータリーエンコーダなどの回転センサで検出した値である。なお、この旋回回転数・マッチング最小回転数変換テーブル250は、
図17に示すように旋回回転数D101がゼロのときマッチング最小回転数を大きくし、旋回回転数D101が大きくなるにしたがってマッチング最小回転数を小さくするような特性で旋回回転数D101の変換を行う。最大値選択部255は、これらのマッチング最小回転数のうちの最大値を選択してマッチング最小回転数D150として出力する。
【0068】
ここで、この実施の形態では、負荷が抜けた場合、エンジン回転数は、最大で無負荷最大回転数np2まで増加し、負荷が十分かかった場合、エンジン回転数は、目標マッチング回転数np1まで下がる。この場合、負荷の大小によってエンジン回転数は大きく変動することになる。このエンジン回転数の大きな変動は、油圧ショベル1のオペレータにとって油圧ショベル1の力が出ていないように感じるといった違和感(力不足感)として、オペレータがとらえるおそれがある。したがって、
図21に示すように、低速オフセット回転数を用い、この設定される低速オフセット回転数の大小によって、エンジン回転数の変動幅を変化させて違和感を除くことができる。すなわち、低速オフセット回転数を小さくすれば、エンジン回転数の変動幅は小さくなり、低速オフセット回転数を大きくすれば、エンジン回転数の変動幅は大きくなる。なお、上部旋回体5が旋回をしている状態や作業機3が掘削作業をしている状態などの油圧ショベル1の稼動状態によって、同じエンジン回転数の変動幅であってもオペレータの違和感の感じ方が異なる。上部旋回体5が旋回をしている状態では、作業機3が掘削作業をしている状態よりも多少エンジン回転数が下がってもオペレータは力不足とは感じにくいので、上部旋回体5が旋回している状態では、作業機3が掘削作業をしている状態よりもエンジン回転数がさらに下がるように設定しても問題はない。この場合、エンジン回転数が下がるため燃費は良くなる。なお、旋回に限らず、他のアクチュエータの動作に応じた、同様なエンジン回転数の変動幅設定は可能である。
【0069】
図21に示すトルク線図について補足説明する。
図21のグラフ中に示す、HP1〜HP5は
図25に示す等馬力曲線Jに相当し、psは馬力単位(ps)を示し、HP1〜HP5へといくにつれて馬力が大きくなり、5本の曲線は例示的に示したものである。求められるエンジン出力指令値によって、等馬力曲線(エンジン出力指令値曲線)ELが求められ設定される。よって、この等馬力曲線(エンジン出力指令値曲線)ELは、HP1〜HP5の5つに限らず無数存在し、その中から選択されるものである。
図21は、馬力がHP3psとHP4psの間の馬力となる等馬力曲線(エンジン出力指令値曲線)ELが求められ設定されている場合を示している。
【0070】
図18は目標マッチング回転数演算ブロック160の詳細制御フローである。
図18に示すように、目標マッチング回転数演算ブロック160は、
図5に示した、目標マッチング回転数np1(D260)を演算する。目標マッチング回転数D260は、エンジン目標出力D240(エンジン出力指令値曲線EL)と目標マッチングルートMLとが交差するエンジン回転数である。目標マッチングルートMLは、あるエンジン出力でエンジン17が動作する際に燃料消費率が良い点を通るように設定されているため、この目標マッチングルートML上のエンジン目標出力D240との交点で目標マッチング回転数D260を決定するのが好ましい。このため、エンジン目標出力・目標マッチング回転数変換テーブル260では、エンジン目標出力演算ブロック140で求められたエンジン目標出力D240(エンジン出力指令値曲線EL)の入力を受けて、エンジン目標出力D240(エンジン出力指令値曲線EL)と目標マッチングルートMLとの交点での目標マッチング回転数を求め、最大値選択部(MAX選択)261に出力する。
【0071】
しかし、
図17に示したマッチング最小回転数演算ブロック150で行われる演算によれば、エンジン回転数の変動幅を小さくする場合、マッチング最小回転数D150が、エンジン目標出力・目標マッチング回転数変換テーブル260にて求めたマッチング回転数よりも大きくなる。このため、最大値選択部(MAX選択)261で、マッチング最小回転数D150とエンジン目標出力D240から求めたマッチング回転数とを比較し、最大値を選択し目標マッチング回転数D260の候補値とすることで、目標マッチング回転数の下限を制限している。
図21では、低速オフセット回転数を小とすれば、目標マッチングルートMLを外れるが、目標マッチング点は、MP1ではなくMP1’となって、目標マッチング回転数D260は、np1ではなくnp1’となる。また、無負荷最大回転数演算ブロック110で求めた無負荷最大回転数D210と同様に、目標マッチング回転数D260は、燃料調整ダイヤル28(スロットルダイヤルD102)の設定値によっても上限が制限される。すなわち、スロットルダイヤル・目標マッチング回転数変換テーブル262は、燃料調整ダイヤル28(スロットルダイヤルD102)の設定値の入力を受けて、燃料調整ダイヤル28(スロットルダイヤルD102)の設定値に対応するドループ線(トルク線図上で燃料調整ダイヤル28(スロットルダイヤルD102)の設定値に対応するエンジン回転数から引くことができるドループ線)と目標マッチングルートMLとの交点のマッチング回転数に変換した目標マッチング回転数D260の候補値を出力し、この出力された目標マッチング回転数D260の候補値と、最大値選択部261で選択された目標マッチング回転数D260の候補値とが最小値選択部(MIN選択)263で比較され、最小値が選択されて、最終的な目標マッチング回転数D260が出力される。
【0072】
図19はエンジン回転数指令値演算ブロック170の詳細制御フローである。以下、
図5に示すトルク線図を参照しながら説明する。
図19に示すように、エンジン回転数指令値演算ブロック170は、2つの油圧ポンプ18の斜板角センサ18aが検出した斜板角をもとに求められたポンプ容量D110,D111をもとに、平均部270がポンプ容量D110,D111を平均した平均ポンプ容量を算出し、この平均ポンプ容量の大きさに応じて、エンジン回転数指令選択ブロック272が、エンジン回転数指令値D270(無負荷最大回転数np2)を求める。すなわち、エンジン回転数指令選択ブロック272は、平均ポンプ容量が、ある設定値(閾値)よりも大きな場合は、エンジン回転数指令値D270を無負荷最大回転数np2(D210)に近づけるようにする。つまり、エンジン回転数を増大させる。一方、平均ポンプ容量が、ある設定値よりも小さな場合は、後述するエンジン回転数nm1に近づけるよう、つまりエンジン回転数を減少させる。目標マッチング回転数np1(D260)と目標マッチング点MP1上のトルクとの交点からドループ線に沿って、エンジントルクをゼロのほうへ下ろした位置に相当するエンジン回転数を無負荷回転数np1aとして、その無負荷回転数np1aに下限回転数オフセット値Δnmを加えた値としてエンジン回転数nm1を求める。なお、目標マッチング回転数D260に対応する無負荷回転数への変換は、マッチング回転数・無負荷回転数変換テーブル271によって変換される。したがって、エンジン回転数指令値D270は、ポンプ容量の状態によって、無負荷最小回転数nm1と無負荷最大回転数np2との間で決まる。下限回転数オフセット値Δnmは、あらかじめ設定した値であって、エンジンコントローラ30のメモリに記憶されている。
【0073】
具体的に説明すると、平均ポンプ容量が、ある設定値q_com1より大きな場合には、エンジン回転数指令値D270を無負荷最大回転数np2に近づけるようにし、平均ポンプ容量が、ある設定値q_com1よりも小さい場合には、次式、
エンジン回転数指令値D270=目標マッチング回転数np1を無負荷回転数に変換した回転数np1a+下限回転数オフセット値Δnm
を用いて求める値に近づけるようにする。このようにして求められたエンジン回転数指令値D270によってドループ線を制御することができ、ポンプ容量に余裕がある場合(平均ポンプ容量がある設定値より小の場合)には、
図5に示すように、エンジン回転数を下げる(エンジン回転数をnm1(無負荷最小回転数)にする)ことが可能になり、燃料消費を抑えて燃費向上が可能になる。設定値q_com1は、あらかじめ設定した値であって、ポンプコントローラ33のメモリに記憶されている。なお、設定値q_com1は、エンジン回転数増加側とエンジン回転数減少側とに分けて2つの異なる設定値を設け、エンジン回転数が変化しない範囲を設けるようにしてもよい。
【0074】
図20はポンプ吸収トルク指令値演算ブロック180の詳細制御フローである。
図20に示すように、ポンプ吸収トルク指令値演算ブロック180は、現在のエンジン回転数D107とエンジン目標出力D240と目標マッチング回転数D260とを用いてポンプ吸収トルク指令値D280を求める。ファン馬力演算ブロック280は、エンジン回転数D107を用いてファン馬力を演算する。なお、ファン馬力は、先に述べた計算式を用いて求められるものである。減算部281は、エンジン目標出力演算ブロック140で求められたエンジン目標出力D240から、この求めたファン馬力を減算した出力(ポンプ目標吸収馬力)を、ポンプ目標マッチング回転数およびトルク演算ブロック282に入力する。このポンプ目標マッチング回転数およびトルク演算ブロック282には、さらに、目標マッチング回転数演算ブロック160で求められた目標マッチング回転数D260が入力される。目標マッチング回転数D260は、油圧ポンプ18の目標マッチング回転数(ポンプ目標マッチング回転数)とされる。そして、ポンプ目標マッチング回転数およびトルク演算ブロック282では、次式に示すように、
ポンプ目標マッチングトルク
=(60×1000×(エンジン目標出力−ファン馬力))
/(2π×目標マッチング回転数)
が演算される。求められたポンプ目標マッチングトルクは、ポンプ吸収トルク演算ブロック283に出力される。
【0075】
ポンプ吸収トルク演算ブロック283は、ポンプ目標マッチング回転数およびトルク演算ブロック282から出力されたポンプ目標マッチングトルクと、回転センサにて検出されたエンジン回転数D107と、目標マッチング回転数D260とが入力される。ポンプ吸収トルク演算ブロック283では、次式に示すように
ポンプ吸収トルク=ポンプ目標マッチングトルク
−Kp×(目標マッチング回転数−エンジン回転数)
が演算され、演算結果であるポンプ吸収トルク指令値D280が出力される。ここで、Kpは、制御ゲインである。
【0076】
このような制御フローが実行されることにより、実際のエンジン回転数D107が目標マッチング回転数D260に比して大きい場合には、上記の式からわかるようにポンプ吸収トルク指令値D280は増加し、逆に、実際のエンジン回転数D107が目標マッチング回転数D260に比して小さい場合には、ポンプ吸収トルク指令値D280は減少することになる。一方、エンジンの出力は、エンジン目標出力D240が上限となるように制御しているため、結果的にエンジン回転数は、目標マッチング回転数D260近傍の回転数で安定しエンジン17が駆動することになる。
【0077】
ここで、エンジン回転数指令値演算ブロック170では、エンジン回転数指令値D270の最小値は、上述したように、
エンジン回転数指令値=目標マッチング回転数np1を無負荷回転数に変換した回転数np1a+下限回転数オフセット値Δnm
の演算によって求められる値となり、目標マッチング回転数に対してエンジンのドループ線は、最低でも下限回転数オフセット値Δnmが加味された高い回転数のところで設定される。このため、本実施の形態1によれば、油圧ポンプ18の実際の吸収トルク(ポンプ実吸収トルク)がポンプ吸収トルク指令に対して多少ばらついた場合でも、ドループ線にはかからない範囲でマッチングすることになり、エンジン17のマッチング回転数が多少変動してもエンジン出力をエンジン出力指令値曲線EL上で制限しエンジン目標出力を一定に制御しているため、実際の吸収トルク(ポンプ実吸収トルク)がポンプ吸収トルク指令に対してばらつきを生じてもエンジン出力の変動を小さくすることが可能となる。この結果、燃費のばらつきも小さく抑えることができ、油圧ショベル1の燃費に対する仕様を満たすことができる。
【0078】
(実施の形態2)
実施の形態1では、上部旋回体5が油圧モータ(旋回油圧モータ31)で旋回し、作業機3が全て油圧シリンダ14,15,16で駆動するような構造を有した油圧ショベル1に対して本発明を適用した例であったが、本実施の形態2は、上部旋回体5を電動旋回モータで旋回させる構造を有した油圧ショベル1に対して本発明を適用した例である。以下、油圧ショベル1は、ハイブリッド油圧ショベル1として説明する。以下、特に断りがないかぎり、本実施の形態2と実施の形態1は共通する構成をとる。
【0079】
ハイブリッド油圧ショベル1は、実施の形態1に示した油圧ショベル1と比較すると、上部旋回体5、下部走行体4、作業機3といった主要構成は同一である。しかし、ハイブリッド油圧ショベル1は、
図22に示すように、エンジン17の出力軸には、油圧ポンプ18とは別に発電機19が機械的に結合されており、エンジン17を駆動することで、油圧ポンプ18および発電機19が駆動する。なお、発電機19は、エンジン17の出力軸に機械的に直結されていてもよいし、エンジン17の出力軸にかけられたベルトやチェーンなどの伝達手段を介して回転駆動するものであってもよい。また、油圧駆動系の油圧モータの旋回油圧モータ31に替えて、電動駆動する旋回モータ24を用い、それに伴い電動駆動系として、キャパシタ22、インバータ23を備える。発電機19によって発電される電力あるいはキャパシタ22から放電される電力が、電力ケーブルを介して旋回モータ24に供給されて上部旋回体5を旋回させる。すなわち、旋回モータ24は、発電機19から供給(発電)される電気エネルギーまたはキャパシタ22から供給(放電)される電気エネルギーで力行作用することで旋回駆動し、旋回減速する際に旋回モータ24は回生作用することによって電気エネルギーをキャパシタ22に供給(充電)する。この発電機19としては、たとえばSR(スイッチドリラクタンス)モータが用いられる。発電機19は、エンジン17の出力軸に機械的に結合されており、エンジン17の駆動によって発電機19のロータ軸を回転させることになる。キャパシタ22は、たとえば、電気二重層キャパシタが用いられる。キャパシタ22に代えて、ニッケル水素バッテリやリチウムイオンバッテリであってもよい。旋回モータ24には、回転センサ25が設けられ、旋回モータ24の回転速度を検出し、電気信号に変換して、インバータ23内に設けられたハイブリッドコントローラ23aに出力する。旋回モータ24としては、例えば埋め込み磁石同期電動機が用いられる。回転センサ25として、たとえばレゾルバやロータリーエンコーダなどが用いられる。なお、ハイブリッドコントローラ23aは、CPU(数値演算プロセッサなどの演算装置)やメモリ(記憶装置)などで構成されている。ハイブリッドコントローラ23aは、発電機19や旋回モータ24、キャパシタ22およびインバータ23に備えられた、サーミスタや熱電対などの温度センサによる検出値の信号を受けて、キャパシタ22などの各機器の過昇温を管理するとともに、キャパシタ22の充放電制御や発電機19による発電・エンジンのアシスト制御、旋回モータ24の力行・回生制御を行う。
【0080】
この実施の形態2によるエンジン制御は、実施の形態1とほぼ同じであり、以下、異なる制御部分について説明する。
図23は、このハイブリッド油圧ショベル1のエンジン制御の全体制御フローを示している。
図6に示した全体制御フローと異なるところは、旋回油圧モータ31の旋回回転数D101に替えて、旋回モータ24の旋回モータ回転数D301、旋回モータトルクD302を入力パラメータとし、さらに発電機出力D303を入力パラメータとして加えている。旋回モータ24の旋回モータ回転数D301は、無負荷最大回転数演算ブロック110およびエンジン最大出力演算ブロック130、さらにマッチング最小回転数演算ブロック150に入力される。旋回モータトルクD302は、エンジン最大出力演算ブロック130に入力される。また、発電機出力D303は、エンジン最大出力演算ブロック130、マッチング最小回転数演算ブロック150、目標マッチング回転数演算ブロック160、およびポンプ吸収トルク指令値演算ブロック180に入力される。
【0081】
この実施の形態2によっても、実施の形態1と同様に、エンジン目標出力の設定などのエンジン制御処理を行うことができる。
操作者の意思に応じたエンジン目標出力を設定して燃費の向上を図るため、操作レバーによるレバー操作総和量が減少している間、レバー操作総和量減少フラグD300を立てるエンジン出力減少許容情報生成ブロック301と、エンジントルクとエンジン回転数とをもとにエンジン実出力D400を演算するエンジン実出力演算ブロック242と、レバー操作総和量減少フラグD300が立っていない間、現在までの最大のエンジン実出力をラッチして出力し、レバー操作総和量減少フラグD300が立っている間、現在のエンジン実出力を出力するエンジン実出力のラッチ機能ブロック302と、エンジン実出力のラッチ機能ブロック302が出力したエンジン出力をもとにエンジン目標出力を演算して出力するエンジン目標出力演算部303と、エンジン目標出力の制限下で、エンジン回転数を制御するエンジンコントローラと、を備える。