図1は、本発明が適用されるハイブリッド式ショベルを示す側面図である。
ハイブリッド式ショベルの下部走行体1には、旋回機構2を介して上部旋回体3が搭載されている。上部旋回体3には、ブーム4が取り付けられている。ブーム4の先端にはアーム5が取り付けられ、アーム5の先端にはバケット6が取り付けられている。ブーム4、アーム5、及びバケット6は、アタッチメントの1例である掘削アタッチメントを構成し、ブームシリンダ7、アームシリンダ8、及びバケットシリンダ9によりそれぞれ油圧駆動される。上部旋回体3には、キャビン10が設けられ、且つエンジン等の動力源が搭載される。
図2は、本発明の実施形態によるハイブリッド式ショベルの駆動系の構成を示すブロック図である。図2において、機械的動力系は二重線、高圧油圧ラインは太実線、パイロットラインは破線、電気駆動・制御系は細実線でそれぞれ示されている。
機械式駆動部としてのエンジン11と、アシスト駆動部としての電動発電機12は、変速機13の2つの入力軸にそれぞれ接続されている。変速機13の出力軸には、油圧ポンプとしてメインポンプ14及びパイロットポンプ15が接続されている。メインポンプ14には、高圧油圧ライン16を介してコントロールバルブ17が接続されている。
コントロールバルブ17は、ハイブリッド式ショベルにおける油圧系の制御を行う制御装置である。下部走行体1用の油圧モータ1A(右用)及び1B(左用)、ブームシリンダ7、アームシリンダ8、及びバケットシリンダ9は、高圧油圧ラインを介してコントロールバルブ17に接続される。なお、油圧系は、下部走行体1用の油圧モータ1A(右用)及び1B(左用)、ブームシリンダ7、アームシリンダ8、バケットシリンダ9、メインポンプ14、コントロールバルブ17を含む。
電動発電機12には、電動発電機制御部としてのインバータ18を介して、蓄電器としてのキャパシタを含む蓄電系120が接続される。また、蓄電系120には、電動発電機制御部としてのインバータ20を介して電動作業要素としての旋回用電動機21が接続されている。旋回用電動機21の回転軸21Aには、レゾルバ22、メカニカルブレーキ23、及び旋回変速機24が接続される。また、パイロットポンプ15には、パイロットライン25を介して操作装置26が接続される。旋回用電動機21と、インバータ20と、レゾルバ22と、メカニカルブレーキ23と、旋回変速機24とで負荷駆動系としての電動旋回系が構成される。
操作装置26は、レバー26A、レバー26B、ペダル26Cを含む。レバー26A、レバー26B、及びペダル26Cは、油圧ライン27及び28を介して、コントロールバルブ17及び圧力センサ29にそれぞれ接続される。圧力センサ29は、電気系の駆動制御を行うコントローラ30に接続されている。
図3は蓄電系120の構成を示すブロック図である。蓄電系120は、蓄電器としてのキャパシタ19と、昇降圧コンバータ100と、バスラインとしてのDCバス110とを含む。第2の蓄電器としてのDCバス110は、第1の蓄電器としてのキャパシタ19、電動発電機12、及び旋回用電動機21の間での電力の授受を制御する。キャパシタ19には、キャパシタ電圧値を検出するためのキャパシタ電圧検出部112と、キャパシタ電流値を検出するためのキャパシタ電流検出部113が設けられている。キャパシタ電圧検出部112とキャパシタ電流検出部113によって検出されるキャパシタ電圧値とキャパシタ電流値は、コントローラ30に供給される。
昇降圧コンバータ100は、電動発電機12及び旋回用電動機21の運転状態に応じて、DCバス電圧値が一定の範囲内に収まるように昇圧動作と降圧動作を切り替える制御を行う。DCバス110は、インバータ18及び20と昇降圧コンバータ100との間に配設されており、キャパシタ19、電動発電機12、及び旋回用電動機21の間での電力の授受を行う。
コントローラ30は、ハイブリッド式ショベルの駆動制御を行う主制御部としての制御装置である。コントローラ30は、CPU(Central Processing Unit)及び内部メモリを含む演算処理装置で構成され、CPUが内部メモリに格納された駆動制御用のプログラムを実行することにより各種機能が実現される。
コントローラ30は、圧力センサ29から供給される信号を速度指令に変換し、旋回用電動機21の駆動制御を行う。圧力センサ29から供給される信号は、旋回機構2を旋回させるために操作装置26を操作した場合の操作量を表す信号に相当する。
コントローラ30は、電動発電機12の運転制御(電動(アシスト)運転又は発電運転の切り替え)を行うとともに、昇降圧制御部としての昇降圧コンバータ100を駆動制御することによるキャパシタ19の充放電制御を行う。コントローラ30は、キャパシタ19の充電状態、電動発電機12の運転状態(アシスト運転又は発電運転)、及び旋回用電動機21の運転状態(力行運転又は回生運転)に基づいて、昇降圧コンバータ100の昇圧動作と降圧動作の切替制御を行い、これによりキャパシタ19の充放電制御を行う。
この昇降圧コンバータ100の昇圧動作と降圧動作の切替制御は、DCバス電圧検出部111によって検出されるDCバス電圧値、キャパシタ電圧検出部112によって検出されるキャパシタ電圧値、及びキャパシタ電流検出部113によって検出されるキャパシタ電流値に基づいて行われる。
以上のような構成において、アシストモータである電動発電機12が発電した電力は、インバータ18を介して蓄電系120のDCバス110に供給された後、昇降圧コンバータ100を介してキャパシタ19に供給され、或いは、インバータ20を介して旋回用電動機21に供給される。また、旋回用電動機21が回生運転して生成した回生電力は、インバータ20を介して蓄電系120のDCバス110に供給された後、昇降圧コンバータ100を介してキャパシタ19に供給され、或いは、インバータ18を介して電動発電機12に供給される。また、キャパシタ19に蓄積された電力は、昇降圧コンバータ100及びDCバス110を介して電動発電機12及び旋回用電動機21の少なくとも一方に供給される。
図4は、蓄電系120の回路図である。昇降圧コンバータ100は、リアクトル101、昇圧用IGBT(Insulated Gate Bipolar Transistor)102A、降圧用IGBT102B、キャパシタ19を接続するための電源接続端子104、インバータ18、20を接続するための一対の出力端子106、及び、一対の出力端子106に並列に挿入される平滑用のコンデンサ107を備える。昇降圧コンバータ100の一対の出力端子106とインバータ18、20との間は、DCバス110によって接続される。
リアクトル101の一端は昇圧用IGBT102A及び降圧用IGBT102Bの中間点に接続され、他端は電源接続端子104に接続される。リアクトル101は、昇圧用IGBT102Aのオン/オフに伴って生じる誘導起電力をDCバス110に供給するために設けられている。
昇圧用IGBT102A及び降圧用IGBT102Bは、MOSFET(Metal Oxide Semiconductor Field Effect Transistor)をゲート部に組み込んだバイポーラトランジスタで構成され、大電力の高速スイッチングが可能な半導体素子である。昇圧用IGBT102A及び降圧用IGBT102Bは、コントローラ30により、ゲート端子にPWM電圧が印加されることによって駆動される。昇圧用IGBT102A及び降圧用IGBT102Bには、整流素子であるダイオード102a及び102bが並列接続される。
キャパシタ19は、昇降圧コンバータ100を介してDCバス110との間で電力の授受が行えるように、充放電可能な蓄電器であればよい。なお、図4には、蓄電器としてキャパシタ19を示すが、キャパシタ19の代わりに、リチウムイオン電池等の充放電可能な二次電池、リチウムイオンキャパシタ、又は、電力の授受が可能なその他の形態の電源が蓄電器として用いられてもよい。
電源接続端子104及び出力端子106は、キャパシタ19及びインバータ18、20が接続可能な端子であればよい。一対の電源接続端子104の間には、キャパシタ電圧を検出するキャパシタ電圧検出部112が接続される。一対の出力端子106の間には、DCバス電圧を検出するDCバス電圧検出部111が接続される。
キャパシタ電圧検出部112は、キャパシタ19の電圧値(vbat_det)を検出する。DCバス電圧検出部111は、DCバス110の電圧(以下、DCバス電圧:vdc_det)を検出する。平滑用のコンデンサ107は、出力端子106の正極端子と負極端子との間に挿入され、DCバス電圧を平滑化するための蓄電素子である。この平滑用のコンデンサ107によって、DCバス110の電圧は予め定められた電圧に維持されている。キャパシタ 電流検出部113は、キャパシタ19に流れる電流の値を検出する検出手段であり、電流検出用の抵抗器を含む。すなわち、キャパシタ電流検出部113は、キャパシタ19に流れる電流値(ibat_det)を検出する。
昇降圧コンバータ100において、DCバス110を昇圧する際には、昇圧用IGBT102Aのゲート端子にPWM電圧が印加され、降圧用IGBT102Bに並列に接続されたダイオード102bを介して、昇圧用IGBT102Aのオン/オフに伴ってリアクトル101に発生する誘導起電力がDCバス110に供給される。これにより、DCバス110が昇圧される。
DCバス110を降圧する際には、降圧用IGBT102Bのゲート端子にPWM電圧が印加され、降圧用IGBT102Bを介して供給される回生電力がDCバス110からキャパシタ19に供給される。これにより、DCバス110に蓄積された電力がキャパシタ19に充電され、DCバス110が降圧される。
なお、実際には、コントローラ30と昇圧用IGBT102A及び降圧用IGBT102Bとの間には、昇圧用IGBT102A及び降圧用IGBT102Bを駆動するPWM信号を生成する駆動部が存在するが、図4では省略する。このような駆動部は、電子回路又は演算処理装置のいずれでも実現することができる。
上述のような構成のハイブリッド式ショベルにおいて、コントローラ30は、キャパシタ19が所定の充電率(SOC)を維持できるようにキャパシタ19を充放電させる。具体的には、コントローラ30は、キャパシタ19が旋回用電動機21等の各種電気負荷から回生電力を受け入れたとしても、或いは、キャパシタ19の充電以外の目的で電動発電機12が行う発電による発電電力を受け入れたとしても過充電とならないよう、キャパシタ19のSOCを適切なレベル(例えば70%)に維持する。
なお、「キャパシタ19の充電以外の目的」は、エンジン11に意図的に負荷を掛けることを含む。また、任意のタイミングで電動発電機12を発電機として機能させることでエンジン11に意図的に負荷を掛けることにより、コントローラ30は、エンジン11の出力を任意のタイミングで増大させることができる。エンジン11は負荷が増大した場合に所定回転数を維持しようとして出力を増大させるためである。そのため、コントローラ30は、エンジン11に油圧負荷が掛かる前に、エンジン11の出力を瞬間的に増大させることによって、油圧負荷が実際に掛かったときに出力不足によってエンジン11の回転数が低下するのを防止できる。なお、以下では、この機能を「負荷前ブースト」と称する。
なお、本実施例では、キャパシタ19のSOCは、キャパシタ電圧検出部112が検出するキャパシタ電圧値に基づいて算出される。但し、キャパシタ19のSOCは、キャパシタ19の内部抵抗を計測することによって導き出されてもよく、他の任意の公知の方法を用いて導き出されてよい。
コントローラ30は、キャパシタ19のSOCの現在値に基づいて充電要求値(充電量に相当する。)及び放電要求値(放電量に相当する。)を決定し、キャパシタ19の充放電を制御する。コントローラ30は、充電要求値をゼロ以外の負値(本実施例では、充電出力を負値とし、放電出力を正値とする。)とした場合、電動発電機12を発電機として機能させる。そして、電動発電機12に充電要求値に相当する電力以上の出力で発電させ、充電要求値に相当する電力でキャパシタ19を充電させる。また、コントローラ30は、充電要求値を値ゼロとした場合、キャパシタ19を充電させない。そのため、キャパシタ19の充電のみのために電動発電機12を発電機として機能させることはない。但し、他の目的のために電動発電機12を発電機として機能させることを禁止することはない。
また、コントローラ30は、放電要求値をゼロ以外の正値とした場合、電動発電機12を電動機として機能させる。そして、電動発電機12に放電要求値に相当する電力以上の出力でアシスト運転させ、放電要求値に相当する電力でキャパシタ19を放電させる。なお、コントローラ30は、旋回用電動機21が力行運転している場合には、放電要求値に相当する電力でキャパシタ19の電力を旋回用電動機21に向けて放電させる。この場合、コントローラ30は、旋回用電動機21の駆動に要する出力[kW]が放電要求値に相当する電力より大きければ、電動発電機12を電動機としてではなく発電機として機能させる。電動発電機12が発電する電力とキャパシタ19が放電する電力とで旋回用電動機21を駆動させるためである。また、コントローラ30は、放電要求値を値ゼロとした場合、キャパシタ19を放電させない。そのため、キャパシタ19の放電のみのために電動発電機12を電動機として機能させることはなく、キャパシタ19の電力を旋回用電動機21に向けて放電させることもない。
ここで、図5を参照し、コントローラ30がキャパシタ19のSOCに基づいて充電要求値及び放電要求値を導き出す処理(以下、「要求値導出処理」とする。)について説明する。なお、図5は、要求値導出処理の流れを示すフローチャートであり、コントローラ30は、所定の制御周期で繰り返しこの要求値導出処理を実行する。
最初に、コントローラ30は、キャパシタ19のSOCを取得する(ステップS1)。本実施例では、コントローラ30は、キャパシタ電圧検出部112が検出するキャパシタ電圧値に基づいてSOCを算出する。
また、コントローラ30は、旋回用電動機21の状態を検出する(ステップS2)。本実施例では、コントローラ30は、レゾルバ22の出力に基づいて算出される旋回速度から旋回用電動機21の運転状態と停止状態とを判別する。また、コントローラ30は、インバータ20を流れる電流に基づいて算出される旋回トルクと旋回速度から旋回用電動機21の力行運転状態と回生運転状態とを判別する。
また、ステップS1及びステップS2は順不同であり、コントローラ30は、旋回用電動機21の状態を検出した後でキャパシタ19のSOCを取得してもよく、2つの処理を同時に実行してもよい。
その後、コントローラ30は、キャパシタ19のSOC及び旋回用電動機21の状態に基づいて充電要求値を導き出す(ステップS3)。本実施例では、コントローラ30は、内部メモリに格納されたSOC・要求値対応テーブルを参照し、現在のSOC及び現在の旋回用電動機21の状態に基づいて充電要求値を導き出す。
また、コントローラ30は、キャパシタ19のSOC及び旋回用電動機21の状態に基づいて放電要求値を導き出す(ステップS4)。本実施例では、コントローラ30は、充電要求値を導出する場合に用いたSOC・要求値対応テーブルを参照し、現在のSOC及び現在の旋回用電動機21の状態に基づいて放電要求値を導き出す。
図6は、SOC・要求値対応テーブルの一例を説明する図である。具体的には、図6は、キャパシタ19のSOCと放電要求値及び充電要求値との関係を示すグラフであり、横軸がSOC[%]に対応し、縦軸が要求値に対応する。なお、図6では、放電要求値を正値とし、充電要求値を負値とする。また、図6の充電要求値は、キャパシタ19の充電のために電動発電機12を発電機として機能させるためのものであり、旋回用電動機21の回生電力による充電を要求するものではない。旋回用電動機21の回生電力は、充電要求値に応じた電動発電機12の発電電力による充電とは別にキャパシタ19に充電される。
また、図6の破線で示す推移CL1は、旋回用電動機21が力行運転状態の場合に採用される充電要求値の推移を表し、図6の一点鎖線で示す推移CL2は、旋回用電動機21が回生運転状態の場合に採用される充電要求値の推移を表し、二点差線で示す推移CL3は、旋回用電動機21が停止状態の場合に採用される充電要求値の推移を表す。
また、図6の破線で示す推移DL1は、旋回用電動機21が力行運転状態の場合に採用される放電要求値の推移を表し、図6の一点鎖線で示す推移DL2は、旋回用電動機21が回生運転状態の場合に採用される放電要求値の推移を表し、二点差線で示す推移DL3は、旋回用電動機21が停止状態の場合に採用される放電要求値の推移を表す。
具体的には、推移CL1は、SOCが40[%]以下の場合に充電要求値が値C1となり、SOCが40[%]を超えて45[%]に至るまで徐々に値ゼロに近づき、SOCが45[%]以上の場合に値ゼロとなることを表す。
また、推移CL2は、SOCが40[%]以下の場合に充電要求値が値C2となり、SOCが40[%]を超えて60[%]に至るまで徐々に値ゼロに近づき、SOCが60[%]以上の場合に値ゼロとなることを表す。なお、値C2の大きさは値C1の大きさより大きい。
また、推移CL3は、SOCが40[%]以下の場合に充電要求値が値C3となり、SOCが40[%]を超えて60[%]に至るまで徐々に値ゼロに近づき、SOCが60[%]以上の場合に値ゼロとなることを表す。なお、値C3の大きさは、値C1の大きさより大きく、値C2の大きさより小さい。
また、推移DL1は、SOCが60[%]以下の場合に放電要求値が値ゼロとなり、SOCが60[%]を超えて100[%]に至るまで一定の割合で増加し、SOCが100[%]に達した場合に値D1となることを表す。
また、推移DL2は、SOCが70[%]以下の場合に放電要求値が値ゼロとなり、SOCが70[%]を超えて80[%]に至るまで一定の割合で増加し、SOCが80[%]以上の場合に値D2となることを表す。なお、値D2の大きさは、値D1の大きさより小さい。
また、推移DL3は、SOCが70[%]以下の場合に放電要求値が値ゼロとなり、SOCが70[%]を超えて85[%]に至るまで一定の割合で増加し、SOCが85[%]以上の場合に値D3となることを表す。なお、値D3の大きさは、値C2の大きさより大きい。なお、値D3の大きさは、値D2の大きさより小さい。
図6のグラフは、例えば、キャパシタ19の現在のSOCが70[%]で且つ旋回用電動機21の現在の状態が力行運転状態であれば、充電要求値が値ゼロで且つ放電要求値がD4であることを表す。
また、図6のグラフは、キャパシタ19の現在のSOCが30[%]で且つ旋回用電動機21の現在の状態が回生運転状態であれば、充電要求値がC2で且つ放電要求値が値ゼロであることを表す。
次に、図7を参照し、旋回用電動機21が力行運転状態の場合に、コントローラ30が充電要求値及び放電要求値を利用してキャパシタ19の充放電を制御する処理(以下、「旋回力行時処理」とする。)について説明する。なお、図7は、旋回力行時処理の流れを示すフローチャートであり、コントローラ30は、旋回用電動機21が力行運転状態の場合に、所定の制御周期で繰り返しこの旋回力行時処理を実行する。なお、コントローラ30は、旋回力行開始時に一度だけこの旋回力行時処理を実行してもよい。
最初に、コントローラ30は、旋回用電動機21の旋回駆動に必要な出力(以下、「所要出力」とする。)が放電要求値以下であるか否かを判定する(ステップS11)。本実施例では、コントローラ30は、レゾルバ22の出力に基づいて算出される旋回速度と、インバータ20を流れる電流に基づいて算出される旋回トルクの積から所要出力を導き出す。そして、コントローラ30は、その所要出力と要求値導出処理で導き出した放電要求値とを比較する。
所要出力が放電要求値以下であると判定した場合(ステップS11のYES)、コントローラ30は、キャパシタ19が放電する電力のみで旋回用電動機21を駆動させる(ステップS12)。
一方、所要出力が放電要求値より大きいと判定した場合(ステップS11のNO)、コントローラ30は、電動発電機12を発電機として機能させる(ステップS13)。
そして、コントローラ30は、放電要求値が値ゼロであるか否かを判定する(ステップS14)。なお、値ゼロの放電要求値は、キャパシタ19の放電が停止されることを意味する。
放電要求値が値ゼロであると判定した場合(ステップS14のYES)、すなわち、キャパシタ19の放電を停止している場合、コントローラ30は、電動発電機12が発電する電力のみで旋回用電動機21を駆動させる(ステップS15)。
その後、コントローラ30は、充電要求値が値ゼロでないか否かを判定する(ステップS16)。本実施例では、要求値導出処理で導き出した充電要求値を参照して充電要求値が値ゼロでないか否かを判定する。なお、値ゼロの充電要求値は、キャパシタ19の充電が停止されることを意味する。
充電要求値が値ゼロでないと判定した場合(ステップS16のYES)、すなわち、キャパシタ19の充電を停止していない場合、コントローラ30は、電動発電機12が発電する電力でキャパシタ19を充電させる(ステップS17)。すなわち、電動発電機12は、所要出力に相当する電力の発電、及び、旋回力行時の充電要求値に相当する電力の発電を行う。
なお、充電要求値が値ゼロであると判定した場合(ステップS16のNO)、コントローラ30は、キャパシタ19の充電を停止させたまま今回の旋回力行時処理を終了させる。
また、放電要求値が値ゼロでないと判定した場合(ステップS14のNO)、すなわち、キャパシタ19の放電を停止していない場合、コントローラ30は、キャパシタ19が放電する電力と電動発電機12が発電する電力で旋回用電動機21を駆動する(ステップS18)。
上述の旋回力行時処理を繰り返し実行することにより、コントローラ30は、図6の推移DL1で示すように、値ゼロでない放電要求値に対応するSOC(例えば60%より大きい値)をキャパシタ19が示す場合、所要出力が放電要求値以下であれば、キャパシタ19が放電する電力のみで旋回用電動機21を駆動させる。また、値ゼロでない放電要求値に対応するSOC(例えば60%より大きい値)をキャパシタ19が示す場合、所要出力が放電要求値より大きければ、キャパシタ19が放電する電力(放電要求値に相当する電力)と電動発電機12が発電する電力とで旋回用電動機21を駆動させる。このようにして、コントローラ30は、旋回力行時に積極的にキャパシタ19を放電させることで、その後の旋回回生時に発生する回生電力を確実にキャパシタ19に充電できるようにする。
また、値ゼロの放電要求値に対応するSOC(例えば60%以下の値)をキャパシタ19が示す場合、電動発電機12が発電する電力のみで旋回用電動機21を駆動させる。また、値ゼロの放電要求値に対応するSOC(例えば45%以下の値)をキャパシタ19が示す場合、コントローラ30は、電動発電機12が発電する電力のみで旋回用電動機21を駆動させ、さらに、充電要求値に相当する電力を電動発電機12に発電させ、その電力をキャパシタ19に充電させる。このようにして、コントローラ30は、例えば、エンジン11の負荷を一定にすべく電動発電機12を電動機として機能させるためのキャパシタ19の放電が増えてキャパシタ19のSOCが低い状態にある場合には、旋回力行時であってもキャパシタ19を充電させることで、キャパシタ19の過放電を防止する。
次に、図8を参照し、旋回用電動機21が回生運転状態の場合に、コントローラ30が充電要求値及び放電要求値を利用してキャパシタ19の充放電を制御する処理(以下、「旋回回生時処理」とする。)について説明する。なお、図8は、旋回回生時処理の流れを示すフローチャートであり、コントローラ30は、旋回用電動機21が回生運転状態の場合に、所定の制御周期で繰り返しこの旋回回生時処理を実行する。
最初に、コントローラ30は、放電要求値が値ゼロであるか否かを判定する(ステップS21)。
放電要求値が値ゼロであると判定した場合(ステップS21のYES)、すなわち、キャパシタ19の放電を停止している場合、コントローラ30は、充電要求値が値ゼロでないか否かを判定する(ステップS22)。
充電要求値が値ゼロでないと判定した場合(ステップS22のYES)、すなわち、キャパシタ19の充電を停止していない場合、コントローラ30は、旋回用電動機21が回生する回生電力の全てと充電要求値に相当する電力をキャパシタ19に充電させる(ステップS23)。
なお、充電要求値が値ゼロであると判定した場合(ステップS22のNO)、すなわち、キャパシタ19の充電を停止している場合、コントローラ30は、旋回用電動機21が回生する回生電力の全てをキャパシタ19に充電させる(ステップS24)。
また、放電要求値が値ゼロでないと判定した場合(ステップS21のNO)、すなわち、キャパシタ19の放電を停止していない場合、コントローラ30は、回生電力が放電要求値より大きいか否かを判定する(ステップS25)。なお、本実施例では、回生電力は負値で表され、放電要求値は正値で表される。そのため、厳密には、コントローラ30は、回生電力の絶対値が放電要求値より大きいか否かを判定する。
回生電力が放電要求値より大きいと判断した場合(ステップS25のYES)、コントローラ30は、回生電力と放電要求値に相当する電力の差の分だけ、キャパシタ19に充電させる(ステップS26)。本実施例では、コントローラ30は、放電要求値に相当する回生電力の一部を旋回用電動機21から電動発電機12に供給して電動発電機12を電動機として機能させ、回生電力の残りの部分をキャパシタ19に充電させる。
一方、回生電力が放電要求値以下であると判断した場合(ステップS25のNO)、コントローラ30は、回生電力と放電要求値に相当する電力との和を電動発電機12に向かわせる(ステップS27)。本実施例では、コントローラ30は、回生電力の全てを旋回用電動機21から電動発電機12に供給し、且つ、放電要求値に相当する電力をキャパシタ19から電動発電機12に供給して電動発電機12を電動機として機能させる。
なお、本実施例では、電動機として機能する電動発電機12が受け入れ可能な電力は、所定の許容電力によって制限される。アシスト出力が大きくなり過ぎてエンジン11が吹き上がってしまうのを防止するためである。したがって、回生電力と放電要求値に相当する電力との和が許容電力を上回る場合、コントローラ30は、放電要求値に相当する電力を低減させることで、すなわちキャパシタ19から放電される電力を低減させることで電動発電機12に供給される電力が許容電力と等しくなるようにする。
上述の旋回回生時処理を繰り返し実行することにより、コントローラ30は、図6の推移DL2で示すように、値ゼロの放電要求値に対応するSOC(例えば30%)をキャパシタ19が示す場合、回生電力の全てをキャパシタ19に供給してキャパシタ19を充電させ、且つ、充電要求値に相当する電力を電動発電機12で発電させ、その発電電力でキャパシタ19を充電させる。このようにして、コントローラ30は、キャパシタ19のSOCが低い状態にある場合には、旋回回生時であっても電動発電機12に発電させてキャパシタ19を充電させることで、キャパシタ19の過放電を防止する。
また、図6の推移DL2で示すように、値ゼロでない放電要求値に対応するSOC(例えば70%より大きい値)をキャパシタ19が示す場合、回生電力の大きさが放電要求値の大きさより大きければ、SOCが100%に達するまでは、その差分電力でキャパシタ19を充電させながら、放電要求値に相当する電力を旋回用電動機21から電動発電機12に供給して電動発電機12を電動機として機能させる。このようにして、コントローラ30は、180度旋回等で大きな回生電力が発生する場合であっても、その回生電力の一部を電動発電機12で消費させることで、キャパシタ19の過充電を防止する。
また、値ゼロでない放電要求値に対応するSOC(例えば70%より大きい値)をキャパシタ19が示す場合、回生電力の大きさが放電要求値の大きさ以下であれば、値ゼロの放電要求値に対応するSOC(例えば70%)に達するまでは、回生電力と放電要求値に相当する電力との和を電動発電機12に向かわせ、電動発電機12を電動機として機能させる。このようにして、コントローラ30は、キャパシタ19の過充電を防止する。
次に、図9を参照し、旋回用電動機21が停止状態の場合に、コントローラ30が充電要求値及び放電要求値を利用してキャパシタ19の充放電を制御する処理(以下、「旋回停止時処理」とする。)について説明する。なお、図9は、旋回停止時処理の流れを示すフローチャートであり、コントローラ30は、旋回用電動機21が停止状態の場合に、所定の制御周期で繰り返しこの旋回停止時処理を実行する。
最初に、コントローラ30は、放電要求値が値ゼロであるか否かを判定する(ステップS31)。
放電要求値が値ゼロであると判定した場合(ステップS31のYES)、すなわち、キャパシタ19の放電を停止している場合、コントローラ30は、充電要求値が値ゼロでないか否かを判定する(ステップS32)。
充電要求値が値ゼロでないと判定した場合(ステップS32のYES)、すなわち、キャパシタ19の充電を停止していない場合、コントローラ30は、電動発電機12を発電機として機能させる(ステップS33)。そして、コントローラ30は、電動発電機12が発電する電力でキャパシタ19を充電させる(ステップS34)。
なお、充電要求値が値ゼロであると判定した場合(ステップS32のNO)、すなわち、キャパシタ19の充電を停止している場合、コントローラ30は、キャパシタ19を充電させない。そのため、キャパシタ19の充電のみのために電動発電機12を発電機として機能させることはない。但し、他の目的のために電動発電機12を発電機として機能させることを禁止することはない。
一方、放電要求値が値ゼロでないと判定した場合(ステップS31のNO)、すなわち、キャパシタ19の放電を停止していない場合、コントローラ30は、キャパシタ19が放電する電力で電動発電機12を駆動させる(ステップS35)。
上述の旋回停止時処理を繰り返し実行することにより、コントローラ30は、図6の推移CL3で示すように、値ゼロでない充電要求値に対応するSOC(例えば30%)を示すキャパシタ19を、値ゼロの充電要求値に対応するSOC(例えば60%)まで充電させる。このようにして、コントローラ30は、例えば、エンジン11の負荷を一定にすべく電動発電機12を電動機として機能させるためのキャパシタ19の放電が増えてキャパシタ19のSOCが低い状態にある場合には、旋回停止時であってもキャパシタ19を充電させることで、キャパシタ19の過放電を防止する。
また、コントローラ30は、図6の推移DL3で示すように、値ゼロでない放電要求値に対応するSOC(例えば90%)を示すキャパシタ19を、値ゼロの放電要求値に対応するSOC(例えば70%)まで放電させる。このようにして、コントローラ30は、例えば、エンジン11に意図的に負荷を掛けるために電動発電機12を発電機として機能させ、或いは、エンジン11の負荷を一定にすべく電動発電機12を電動機として機能させる機会が増えることでキャパシタ19が頻繁に充電される場合であっても、キャパシタ19のSOCが過度に高くなるのを防止できる。
また、コントローラ30は、充電要求値及び放電要求値が何れも値ゼロとなるSOC(例えば60%以上70%以下)をキャパシタ19が示す場合、キャパシタ19を充放電させないようにする。
次に、図10を参照し、ショベルに対して所定の複合操作が入力された場合にコントローラ30が放電要求値を超えてキャパシタ19を放電させる処理(以下、「パワーブースト処理」とする。)について説明する。なお、図10は、パワーブースト処理の流れを示すフローチャートであり、コントローラ30は、キャパシタ19のSOCが所定範囲内にある場合に、所定の制御周期で繰り返しこのパワーブースト処理を実行する。本実施例では、コントローラ30は、キャパシタ19のSOCが50%以上70%以下の場合に、所定の制御周期で繰り返しこのパワーブースト処理を実行する。なお、コントローラ30は、旋回力行時処理を実行している場合であっても、パワーブースト処理を優先的に実行する。
最初に、コントローラ30は、ブーム上げ旋回操作が行われたか否かを判定する(ステップS41)。本実施例では、コントローラ30は、圧力センサ29の出力を監視することで、ブーム操作レバー及び旋回操作レバーの操作内容を監視する。そして、コントローラ30は、ブーム操作レバーが上げ方向に操作され、且つ、旋回操作レバーが左回転方向又は右回転方向の何れかに操作されたことを検出した場合に、複合操作としてのブーム上げ旋回操作が行われたと判定する。
ブーム上げ旋回操作が行われたと判定した場合(ステップS41のYES)、コントローラ30は、ブーム操作レバーに対する操作がフルレバー操作であるか否かを判定する(ステップS42)。
「フルレバー操作」とは、レバー操作量を所定のレバー操作量以上とする操作であり、本実施例では、80%以上のレバー操作量でブーム操作レバーを上げ方向に傾斜させることを意味する。なお、レバー操作量は、ブーム操作レバーが中立位置のときに0%を示し、最大傾斜位置のときに100%を示す。
フルレバー操作であると判定した場合(ステップS42のYES)、コントローラ30は、キャパシタ19が放電する電力のみで旋回用電動機21を駆動させる(ステップS43)。
ブーム上げ旋回操作中のブーム4の上昇速度の低下を防止するためである。具体的には、旋回力行開始時にSOCが低い場合(例えば、回生電力が十分に得られなかった場合、又は、電動発電機12によるアシスト運転のためのキャパシタ19の放電が多かった場合)、パワーブースト処理を実行しなければ、キャパシタ19から旋回用電動機21への電力供給量が制限されるので、電動発電機12から旋回用電動機21への電力供給量が増える。そのため、通常の旋回力行時処理(図7参照。)に比べ、電動発電機12はエンジン11の発電負荷を増大させ、メインポンプ14が消費できるエンジン11の出力は減少する。そのため、メインポンプ14は吐出量が制限され、ブームシリンダ7のボトム側油室に流入する作動油の量も制限される。その結果、ブーム4の上昇速度が低下する。パワーブースト処理は、このブーム4の上昇速度の低下を防止する。
その後、コントローラ30は、放電電力量が所定電力量に達したか否かを判定する(ステップS44)。本実施例では、コントローラ30は、ブーム上げ旋回操作の際にキャパシタ19が所定出力[kW]で旋回用電動機21に向けて放電した電力の累積量すなわち放電電力量[kJ]を監視し、その放電電力量[kJ]が所定電力量[kJ]に達したか否かを判定する。
その後、コントローラ30は、放電電力量[kJ]が所定電力量[kJ]に達するまでキャパシタ19が放電する電力のみで旋回用電動機21を駆動させ続ける。
そして、放電電力量[kJ]が所定電力量[kJ]に達したと判定した場合(ステップS44のYES)、コントローラ30は、パワーブースト処理を終了させる。本実施例では、ブーム4が所定角度だけ上昇したところでコントローラ30がパワーブースト処理を終了できるように所定電力量[kJ]が設定される。パワーブースト処理終了後は、旋回回生が開始されるまでは、コントローラ30は、その時点のSOCに応じた変化率αで旋回力行時の放電要求値を低下させる。そして、旋回用電動機21の所要出力がその放電要求値に相当する電力を超える場合には、その差分を電動発電機12から供給させる。旋回回生が開始された後は、旋回回生時処理を実行し、充電要求値及び放電要求値に基づいてキャパシタ19の充放電を制御する。なお、変化率αは、図6の破線で示す推移DL1の傾きに相当する変化率であってもよい。
なお、ブーム操作レバーに対する操作がフルレバー操作でないと判定した場合(ステップS42のNO)、コントローラ30は、パワーブースト処理では、キャパシタ19が放電する電力のみで旋回用電動機21を駆動させることはない。ブーム4を迅速に上昇させる意思を操作者が有しておらず、ブーム4の上昇速度の低下を防止する必要はないと判断できるためである。この場合、コントローラ30は、ブーム上げ旋回操作(厳密には旋回操作)が完了するまでは旋回用電動機21の状態に応じて旋回力行時処理又は旋回回生時処理を実行する。そのため、キャパシタ19が放電する電力のみで旋回用電動機21を駆動させる場合もある。
以上の構成により、コントローラ30は、キャパシタ19の現在のSOCに対応する充電要求値及び放電要求値に基づいてキャパシタ19の充放電を制御する。そのため、キャパシタ19の充放電をより適切に制御できる。
また、コントローラ30は、旋回用電動機21の状態に応じて充電要求値及び放電要求値を変化させる。そのため、キャパシタ19の充放電をより適切に制御できる。
次に、図11を参照し、電動発電機12のアシスト出力の時間的推移について説明する。図11は、電動発電機12のアシスト出力の時間的推移の一例を示す図である。
図11の時刻t0〜時刻t1の期間及び時刻t4〜時刻t5の期間では、電動発電機12は発電機として機能し、発電した電力をキャパシタ19に充電する。これらの発電は負荷前ブーストのための発電に相当する。
また、時刻t2〜時刻t3の期間では、例えば掘削作業に伴う油圧負荷が発生しており、電動発電機12は電動機としての動作と発電機としての動作を交互に繰り返す。電動機として機能する場合、電動発電機12は、キャパシタ19が放電する電力を利用して回転トルクを発生させてエンジン11をアシストする。一方、発電機として機能する場合、電動発電機12は、エンジン11の回転トルクを利用して発電した電力でキャパシタ19を充電する。
時刻t2〜時刻t3の期間における電動機としての動作と発電機としての動作の繰り返しは以下の理由によって引き起こされる。
具体的には、エンジン11は、油圧負荷が瞬間的に増大すると、燃料噴射量を増大させることでエンジン出力を増大させ、エンジン回転数を一定に維持しようとする。しかしながら、エンジン11は、電動発電機12に比べて応答性が低いため、燃料噴射量の増大によるエンジン出力の増大が実現される前にエンジン回転数を低下させてしまう。そのため、電動発電機12は、瞬時に電動機として機能してエンジン11をアシストし、エンジン回転数が低下しないようにする。
その後、エンジン11は、油圧負荷が瞬間的に減少すると、燃料噴射量を減少させることでエンジン出力を減少させ、エンジン回転数を一定に維持しようとする。しかしながら、エンジン11は、電動発電機12に比べて応答性が低いため、燃料噴射量の減少によるエンジン出力の減少が実現される前にエンジン回転数を増大させてしまう。そのため、電動発電機12は、瞬時に発電機として機能してエンジン11に発電負荷を掛け、エンジン回転数が増大しないようにする。
その後も同様に、エンジン回転数を一定に維持するために、油圧負荷の増減に応じて、エンジン11は燃料噴射量の増減を交互に繰り返し、電動発電機12は電動機としての動作と発電機としての動作を交互に繰り返す。
したがって、本実施例では、電動発電機12は電動機として機能するよりも発電機として機能する期間が長く、キャパシタ19は放電されにくく充電され易い傾向にある。
次に、図12を参照し、電動発電機12が発電機又は電動機として機能する場合に、コントローラ30がメインポンプ14の許容最大吸収馬力を増減させる処理(以下、「許容最大吸収馬力増減処理」とする。)について説明する。なお、図12は、許容最大吸収馬力増減処理を説明する概念図である。また、本実施例では、メインポンプ14の吸収馬力は、メインポンプ14の吐出量と吐出圧の積として算出される。
具体的には、コントローラ30は、エンジン出力EPを導き出す。本実施例では、コントローラ30は、エンジン回転数センサ(図示せず。)の検出値を受け、内部メモリに予め記憶されたエンジン回転数・エンジン出力対応マップを参照してエンジン出力EPを導き出す。
また、コントローラ30は、アシスト出力APを導き出す。本実施例では、コントローラ30は、キャパシタ電圧検出部112及びキャパシタ電流検出部113の検出値に基づき、電動発電機12とキャパシタ19との間でやりとりされる電力をアシスト出力APとして導き出す。なお、本実施例では、アシスト出力APは、電動発電機12が電動機として機能する場合(キャパシタ19が放電を行う場合)に正値となり、電動発電機12が発電機として機能する場合(キャパシタ19が充電を行う場合)に負値となる。
その後、コントローラ30は、エンジン出力EPとアシスト出力APとを加算して総出力TPを導き出す。総出力TPは、電動発電機12が電動機として機能する場合(キャパシタ19が放電を行う場合)にエンジン出力EPよりもアシスト出力AP分だけ大きい値となり、電動発電機12が発電機として機能する場合(キャパシタ19が充電を行う場合)にエンジン出力EPよりもアシスト出力AP分だけ小さい値となる。
その後、コントローラ30は、ポンプ電流PCを導き出す。本実施例では、コントローラ30は、エンジン回転数センサの検出値を受け、内部メモリに予め記憶されているエンジン回転数に応じた総出力・ポンプ電流対応マップを参照してポンプ電流PCを導き出す。
その後、コントローラ30は、ポンプ電流PCをメインポンプ14のレギュレータ(図示せず。)に対して出力する。なお、レギュレータは、コントローラ30からの指令に応じてメインポンプ14の斜板傾転角を調整してメインポンプ14の吐出量を制御する装置である。本実施例では、レギュレータは、ポンプ電流PCが小さいほどメインポンプ14の吐出量を低減させる。
そのため、コントローラ30は、エンジン回転数が一定であれば、すなわち、エンジン出力EPが一定であれば、アシスト出力APが大きいほど、すなわち電動発電機12の電力消費量(キャパシタ19の放電量)が大きいほど、ポンプ電流PCを大きくしてメインポンプ14の許容最大吸収馬力を増大させる。アシスト出力APが大きくなると総出力TPも大きくなり、総出力TPに余裕が生じるためであり、その余裕分をメインポンプ14が効率的に利用できるようにするためである。その結果、メインポンプ14の吸収馬力は、増大された許容最大吸収馬力の範囲内で制御される。
反対に、コントローラ30は、エンジン回転数が一定であれば、すなわち、エンジン出力EPが一定であれば、アシスト出力APが小さいほど、すなわち電動発電機12の発電量(キャパシタ19の充電量)が大きいほど、ポンプ電流PCを小さくしてメインポンプ14の許容最大吸収馬力を低減させる。アシスト出力APが小さくなると総出力TPも小さくなり、メインポンプ14の吸収馬力を低減させなければ、その吸収馬力が総出力TPを上回るおそれがあるためである。その結果、メインポンプ14の吸収馬力は、低減された許容最大吸収馬力の範囲内で制御される。
次に、図13を参照し、旋回用電動機21の所要電力、電動発電機12の発電電力、及びメインポンプ14の許容最大吸収馬力の時間的推移について説明する。図13は、所要電力、発電電力、及び許容最大吸収馬力の時間的推移を示す図である。
時刻t10において、旋回操作レバーが操作されると、旋回用電動機21の所要電力は増大し始める。所要電力が放電要求値を超えるまでは、旋回用電動機21は、キャパシタ19が放電する電力のみを用いて上部旋回体3を旋回させる。なお、放電要求値は、図13の破線で示すように、キャパシタ19の放電が継続するのにしたがって、すなわちSOCが低下するのにしたがって減少する。
時刻t11において、所要電力が放電要求値を超えると、旋回用電動機21は、キャパシタ19が放電する電力に加え、電動発電機12が発電する電力を用いて上部旋回体3を旋回させる。そのため、電動発電機12は、エンジン11の回転トルクを利用する発電機として機能し、発電した電力を旋回用電動機21に供給する。
電動発電機12が発電を開始すると、エンジン11の回転トルクが電動発電機12によって吸収(消費)されるため、コントローラ30は、許容最大吸収馬力増減処理によってメインポンプ14の許容最大吸収馬力を低減させる。
電動発電機12の発電電力は旋回用電動機21の所要電力が増大するにつれて増大され、メインポンプ14の許容最大吸収馬力は電動発電機12の発電電力が増大するにつれて低減される。また、キャパシタ19の放電電力は、時間の経過と共にSOC及び放電要求値が低下するにつれて低減される。そのため、電動発電機12の発電電力は、キャパシタ19の放電電力の低減分を補うためにも増大される。なお、図13の所要電力の推移図における粗いハッチングの領域は所要電力に占める電動発電機12の発電電力を示し、図13の細かいハッチングの領域は所要電力に占めるキャパシタ19の放電電力を示す。また、図13の発電電力の推移図における粗いハッチングの領域は発電電力の累積量を表し、図13の所要電力の推移図における粗いハッチングの領域に対応する。
図11〜図13を参照して説明したように、電動発電機12は電動機として機能するよりも発電機として機能する期間が長く、キャパシタ19は放電されにくく充電され易い傾向にあり、また、メインポンプ14は電動発電機12の発電量が大きいほどその許容最大吸収馬力が低減される傾向にある。
そのため、コントローラ30は、放電要求値及び充電要求値を適切に設定してキャパシタ19が放電されにくく充電され易い傾向を緩和することが望ましい。旋回操作が行われたときにキャパシタ19が放電され易い傾向を採用することで、コントローラ30は、キャパシタ19から旋回用電動機21に十分な電力が供給されるようにして電動旋回系の動きをパワフルできるためである。また、キャパシタ19から旋回用電動機21に十分な電力が供給されるようにし、旋回用電動機21に電力を供給するために電動発電機12を発電機として機能させる機会、ひいては電動発電機12の発電によりメインポンプ14の許容最大吸収馬力が制限される機会を減らすことで油圧系の動きをパワフルにすることができるためである。また、旋回操作の有無にかかわらず、キャパシタ19が充電されにくい傾向を採用することで、コントローラ30は、電動発電機12の発電によりメインポンプ14の許容最大吸収馬力が制限される機会を減らし、油圧系の動きをパワフルにすることができるためである。
図6で示したキャパシタ19のSOCと放電要求値及び充電要求値との関係は、上述の点を考慮して設定されたものである。そこで、図14及び図15を参照してその詳細を説明する。
図14は、旋回力行中における電動発電機12、キャパシタ19、及び旋回用電動機21の間の電力の授受を説明する図である。具体的には、図14上図は、キャパシタ19のSOCと放電要求値及び充電要求値との関係を示すグラフであり、図6に対応する。なお、推移CL1は、旋回用電動機21が力行運転状態の場合に採用される充電要求値の推移を表す。また、推移DL1は、旋回用電動機21が力行運転状態の場合に採用される放電要求値の推移を表す。また、図14の4点Pa〜Pdは、4つのSOCのそれぞれにおける、旋回用電動機21の所要出力RA[kW]と充電要求値及び放電要求値との関係を示す。また、図14下図は、4点Pa〜Pdのそれぞれにおける電動発電機12、キャパシタ19、及び旋回用電動機21の間の電力の授受を概略的に示す。
具体的には、点Paは、SOCが90[%]のときに、所要出力RA[kW]に相当する電力WC1[kW]がキャパシタ19から旋回用電動機21に供給されることを示す。この場合、旋回用電動機21は、キャパシタ19が放電する電力WC1[kW]のみで駆動される。SOCが90[%]のときの放電要求値より所要電力RA[kW]が小さいためである。なお、本実施例では、この場合、キャパシタ19は電動発電機12に電力を供給しない。但し、キャパシタ19は、SOCが90[%]のときの放電要求値と電力WC1[kW]との差である電力WC0[kW]を電動発電機12に供給して電動発電機12を電動機として機能させ、エンジン11をアシストしてもよい。
また、点Pbは、SOCが70[%]のときに、電力WC2[kW]がキャパシタ19から旋回用電動機21に供給され、電力WG1[kW]が電動発電機12から旋回用電動機21に供給され、電力WC2[kW]と電力WG1[kW]の合計が所要出力RA[kW]に相当することを示す。この場合、旋回用電動機21は、電動発電機12が発電する電力WG1[kW]とキャパシタ19が放電する電力WC2[kW]とで駆動される。SOCが70[%]のときの放電要求値より所要電力RA[kW]が大きいためである。
また、点Pcは、SOCが55[%]のときに、所要出力RA[kW]に相当する電力WG2[kW]が電動発電機12から旋回用電動機21に供給されることを示す。この場合、旋回用電動機21は、電動発電機12が発電する電力WG2[kW]のみで駆動される。SOCが55[%]のときの放電要求値が値ゼロのためである。
また、点Pdは、SOCが35[%]のときに、所要出力RA[kW]に相当する電力WG2[kW]が電動発電機12から旋回用電動機21に供給され、充電要求値に相当する電力WG3[kW]が電動発電機12からキャパシタ19に供給されることを示す。この場合、旋回用電動機21は、電動発電機12が発電する電力WG2[kW]のみで駆動される。SOCが35[%]のときの放電要求値が値ゼロのためである。また、キャパシタ19は、電動発電機12が発電する電力WG3[kW]で充電される。
このように、旋回力行中における電力の供給源及び供給先は、キャパシタ19のSOCに応じて変化する。
図15は、旋回回生中における電動発電機12、キャパシタ19、及び旋回用電動機21の間の電力の授受を説明する図である。具体的には、図15上図は、キャパシタ19のSOCと放電要求値及び充電要求値との関係を示すグラフであり、図6及び図14に対応する。なお、推移CL2は、旋回用電動機21が回生運転状態の場合に採用される充電要求値の推移を表す。また、推移DL2は、旋回用電動機21が回生運転状態の場合に採用される放電要求値の推移を表す。また、図15の2点Pe及びPfは、2つのSOCのそれぞれにおける、旋回用電動機21が生成する回生電力RB[kW]と充電要求値及び放電要求値との関係を示す。また、図15下図は、2点Pe及びPfのそれぞれにおける電動発電機12、キャパシタ19、及び旋回用電動機21の間の電力の授受を概略的に示す。
具体的には、点Peは、SOCが75[%]のときに、回生電力RB[kW]に相当する電力WG5[kW]が旋回用電動機21から電動発電機12に供給され、放電要求値に相当する電力WC5[kW]がキャパシタ19から電動発電機12に供給されることを示す。この場合、電動発電機12は、旋回用電動機21が生成する回生電力RBに想到する電力WG5[kW]とキャパシタ19が放電する電力WC5[kW]とを用いて電動機として機能する。SOCが75[%]のときの放電要求値の大きさより回生電力RB[kW]の大きさが小さいためである。
また、点Pfは、SOCが90[%]のときに、回生電力RB[kW]に相当する電力WG5[kW]が旋回用電動機21から電動発電機12に供給され、放電要求値に相当する電力WC6[kW]がキャパシタ19から電動発電機12に供給されることを示す。この場合、電動発電機12は、旋回用電動機21が生成する回生電力RB[kW]に相当する電力WG5[kW]とキャパシタ19が放電する電力WC6[kW]とを用いて電動機として機能する。SOCが90[%]のときの放電要求値の大きさより回生電力RB[kW]の大きさが小さいためである。
なお、本実施例では、電動機として機能する電動発電機12が受け入れ可能な電力は、所定の許容電力によって制限される。アシスト出力が大きくなり過ぎてエンジン11が吹き上がってしまうのを防止するためである。したがって、電力WG5[kW]と電力WC6[kW]との和が許容電力を上回る場合、コントローラ30は、電力WC6[kW]を低減させることで、すなわちキャパシタ19から放電される電力を低減させることで電動発電機12に供給される電力が許容電力と等しくなるようにする。
なお、図6、図14、及び図15に示すように、キャパシタ19の旋回力行中の充電要求値の最大値C1、旋回回生中の充電要求値の最大値C2、及び旋回停止中の充電要求値の最大値C3は何れも、旋回力行中の放電要求値の最大値D1、旋回回生中の放電要求値の最大値D2、及び旋回停止中の放電要求値の最大値D3の何れよりも小さい。すなわち、コントローラ30は、最大値C1〜C3を低めに設定しておくことで、キャパシタ19の充電のために電動発電機12を発電機として機能させる機会を少なくし、キャパシタ19が充電され易い傾向を緩和している。
また、旋回力行中の放電要求値は、図14の破線で示す推移DL1のように、キャパシタ19のSOCが高くなるにつれて値ゼロから最大値D1に至るまで変化率α1で大きくなるように設定される。また、旋回力行中の充電要求値は、図14の一点鎖線で示す推移CL1のように、キャパシタ19のSOCが低くなるにつれて値ゼロから最大値C1まで変化率β1で大きくなるように設定される。同様に、旋回回生中の放電要求値は、図15の破線で示す推移DL2のように、キャパシタ19のSOCが高くなるにつれて値ゼロから最大値D2に至るまで変化率α2で大きくなるように設定される。また、旋回回生中の充電要求値は、図15の一点鎖線で示す推移CL2のように、キャパシタ19のSOCが低くなるにつれて値ゼロから最大値C2まで変化率β2で大きくなるように設定される。また、なお、旋回力行中におけるキャパシタ19のSOCに対する充電要求値の変化率β1は放電要求値の変化率α1以下であり、旋回回生中におけるキャパシタ19のSOCに対する充電要求値の変化率β2は放電要求値の変化率α2以下である。また、図示しないが、旋回停止中の放電要求値及び充電要求値のそれぞれの変化率に関しても同じことがいえる。
この設定により、コントローラ30は、キャパシタ19が放電されにくい傾向を緩和し、SOCが高いほど旋回用電動機21に対して大きな電流を供給でき、且つ、旋回用電動機21をパワフルに駆動できる。
また、コントローラ30は、キャパシタ19のSOCが所定レベル(例えば旋回回生時の70%)以上であれば、電動発電機12が発電する電力よりもキャパシタ19が放電する電力を旋回用電動機21が優先的に利用できるようにする。この点においても、コントローラ30は、キャパシタ19に蓄積された電力が旋回用電動機21で効率的に利用されるようにしてキャパシタ19が放電されにくい傾向を緩和している。
また、コントローラ30は、パワーブースト処理により、キャパシタ19のSOCが比較的低い場合であっても、キャパシタ19が放電する電力のみで旋回用電動機21を駆動させ、ブーム上げ旋回操作の際にブーム4の上昇速度が低下するのを防止できる。この点においても、コントローラ30は、パワーブースト処理を実行することでキャパシタ19のSOCを下げるため、キャパシタ19が放電されにくい傾向を緩和し、ブーム上げ旋回操作が行われたときの旋回回生時に発生する回生電力をより確実にキャパシタ19に充電させることができる。
以上の構成により、コントローラ30は、キャパシタ19の現在のSOCに応じた適切な充電要求値及び放電要求値を用いることで、キャパシタ19が充電され易く放電されにくい傾向を緩和する。
例えば、コントローラ30は、充電要求値及び放電要求値を適切に設定し、キャパシタ19のSOCが所定SOCとなるようキャパシタ19の充放電を制御する。所定SOCは、キャパシタ19の充放電を停止させるときのSOCであり、例えば、図14における45[%]〜60[%]の範囲内、又は、図15における60[%]〜70[%]の範囲内にあるSOCである。また、コントローラ30は、現在のSOCと所定SOCとの差が同じであれば、現在のSOCが所定SOCに向かって増大する際の充電要求値の大きさが、現在のSOCが所定SOCに向かって減少する際の放電要求値の大きさ以下となるように放電要求値及び充電要求値を設定する。
そのため、コントローラ30は、キャパシタ19を適切に充放電させてキャパシタ19のSOCを適正なレベルに維持できるようにしながらも、キャパシタ19の充電のために電動発電機12を発電機として機能させる機会(メインポンプ14の許容最大吸収馬力を制限する機会)を減らすことで油圧系の動きをパワフルにできる。また、コントローラ30は、キャパシタ19を適切に充放電させてキャパシタ19のSOCを適正なレベルに維持できるようにしながらも、旋回力行時にキャパシタ19の放電を積極的に許容することで電動旋回系の動きをパワフルにできる。また、旋回力行時にキャパシタ19の放電を積極的に許容することで旋回用電動機21を駆動するために電動発電機12を発電機として機能させる機会(メインポンプ14の許容最大吸収馬力を制限する機会)を減らすことができ、油圧系と電動旋回系の複合操作の際の油圧系の動きをパワフルにできる。
以上、本発明の好ましい実施例について詳説したが、本発明は、上述した実施例に制限されることはなく、本発明の範囲を逸脱することなしに上述した実施例に種々の変形及び置換を加えることができる。
例えば、図11〜図15を用いてエネルギマネジメント(放電要求値及び充電要求値の設定)の具体例を説明したが、本発明はこの具体例に限定されるものではない。本発明は、電動発電機12を発電機として機能させる機会(メインポンプ14の許容最大吸収馬力を制限する機会)を減らして油圧系の動きをパワフルにしつつ電動旋回系の動きをパワフルにできる放電要求値及び充電要求値の任意の設定を含む。
また、上述の実施例では、コントローラ30は、ブーム上げ旋回操作のためのパワーブースト処理を実行するが、アーム開き旋回操作等、旋回操作を含む他の複合操作のためにパワーブースト処理を実行してもよい。
また、SOC・要求値対応テーブルは、温度毎に複数用意されてもよい。具体的には、気温が所定値より低い場合に採用される低温時テーブルと、気温が所定値以上の場合に採用される常温時テーブルとが用意されてもよい。