図1は、本発明の実施例に係る建設機械の一例であるハイブリッド式ショベルを示す側面図である。ハイブリッド式ショベルの下部走行体1には旋回機構2を介して上部旋回体3が搭載される。上部旋回体3にはブーム4が取り付けられる。ブーム4の先端にはアーム5が取り付けられ、アーム5の先端にはバケット6が取り付けられる。ブーム4、アーム5、及びバケット6は、アタッチメントの一例である掘削アタッチメントを構成し、ブームシリンダ7、アームシリンダ8、及びバケットシリンダ9によりそれぞれ油圧駆動される。上部旋回体3にはキャビン10が設けられ且つエンジン11等の動力源が搭載される。
図2は、図1のハイブリッド式ショベルの駆動系の構成例を示すブロック図である。図2において、機械的動力系は二重線、高圧油圧ラインは太実線、パイロットラインは破線、電気駆動・制御系は細実線でそれぞれ示される。
エンジン11と電動発電機12は変速機13の2つの入力軸にそれぞれ接続される。変速機13の出力軸には油圧ポンプとしてのメインポンプ14及びパイロットポンプ15が接続される。メインポンプ14には高圧油圧ライン16を介してコントロールバルブ17が接続される。
コントロールバルブ17は、ハイブリッド式ショベルにおける油圧系の制御を行う制御装置である。右側走行用油圧モータ1A、左側走行用油圧モータ1B、ブームシリンダ7、アームシリンダ8、バケットシリンダ9等の油圧アクチュエータは、高圧油圧ラインを介してコントロールバルブ17に接続される。なお、油圧系は、右側走行用油圧モータ1A、左側走行用油圧モータ1B、ブームシリンダ7、アームシリンダ8、バケットシリンダ9、メインポンプ14、及びコントロールバルブ17を含む。
電動発電機12にはインバータ18を介して蓄電装置としてのキャパシタ19を含む蓄電系120が接続される。なお、蓄電装置としては電気的エネルギを蓄える手段であればどのような手段が採用されてもよい。また、蓄電系120にはインバータ20を介して旋回用電動機21が接続される。旋回用電動機21の回転軸21Aには、レゾルバ22、メカニカルブレーキ23、及び旋回変速機24が接続される。また、パイロットポンプ15にはパイロットライン25を介して操作装置26が接続される。
操作装置26は、レバー26A、レバー26B、ペダル26Cを含む。レバー26A、レバー26B、及びペダル26Cは、油圧ライン27及び28を介して、コントロールバルブ17及び圧力センサ29にそれぞれ接続される。圧力センサ29は電気系の駆動制御を行うコントローラ30に接続されている。
図3は蓄電系120の構成を示すブロック図である。蓄電系120は、キャパシタ19と、昇降圧コンバータ100と、DCバス110とを含む。キャパシタ19は、電気二重層キャパシタ、リチウムイオンキャパシタ、リチウムイオン電池等を含む。なお、本実施例では、キャパシタ19はリチウムイオンキャパシタである。また、DCバス110は、キャパシタ19、電動発電機12、及び旋回用電動機21の間での電力の授受を制御する。キャパシタ19には、キャパシタ電圧値を検出するためのキャパシタ電圧検出部112と、キャパシタ電流値を検出するためのキャパシタ電流検出部113が設けられる。キャパシタ電圧検出部112とキャパシタ電流検出部113によって検出されるキャパシタ電圧値とキャパシタ電流値はコントローラ30に供給される。
具体的には、キャパシタ電圧値は、キャパシタ19の端子電圧に相当する。そして、キャパシタ19の開放電圧をVc[V]とし、キャパシタ19の内部抵抗をR[Ω]とし、キャパシタ19から昇降圧コンバータ100に流れる放電電流の大きさをId[A]とすると、キャパシタ19の放電時の端子電圧V1は、V1=Vc−R×Idで表され、キャパシタ19の放電電力W1は、W1=V1×Idで表される。また、昇降圧コンバータ100からキャパシタ19に流れる充電電流の大きさをIcとすると、キャパシタ19の充電時の端子電圧V2は、V2=Vc+R×Icで表され、キャパシタ19の充電電力W2は、W2=V2×Icで表される。
また、キャパシタ19の放電時の発熱量Q1はId2×Rで表され、充電時の発熱量Q2はIc2×Rで表される。
また、キャパシタ19の充電率(SOC)は、キャパシタ19の最小電圧をVminとし、最大電圧をVmaxとすると、以下の式で表される。
以上の関係から、キャパシタ19のSOCが高いことは開放電圧Vcが高いことを意味し、所定の放電電力W1を実現する場合の放電電流Idが小さくて済み、放電時の発熱量Q1も小さくなるため、放電効率が高いことが分かる。同様に、所定の充電電力W2を実現する場合の充電電流Icが小さくて済み、充電時の発熱量Q2も小さくなるため、充電効率が高いことが分かる。
また、キャパシタ19には、キャパシタ19の温度(キャパシタ温度)を検出するための温度検出部としての温度センサM2が設けられている。また、昇降圧コンバータ100にも、昇降圧コンバータ100の温度を検出するための温度検出部としての温度センサM3が設けられている。なお、温度センサM2及び温度センサM3は、例えばサーミスタで構成され、各検出値をコントローラ30に対して出力する。また、キャパシタ温度は、キャパシタ19の冷却に用いられる冷却水の温度を検出することで間接的に検出されてもよい。また、キャパシタ温度は、キャパシタ19を搭載する筐体の温度、又は、筐体内部若しくは筐体外部の雰囲気温度等から間接的に検出されてもよい。
昇降圧コンバータ100は、電動発電機12及び旋回用電動機21の運転状態に応じて、DCバス電圧値が一定の範囲内に収まるように昇圧動作と降圧動作を切り替える制御を行う。DCバス110は、インバータ18及び20と昇降圧コンバータ100との間に配設されており、キャパシタ19、電動発電機12、及び旋回用電動機21の間での電力の授受を行う。
コントローラ30は、ハイブリッド式ショベルの駆動制御を行う主制御部としての制御装置である。本実施例では、コントローラ30は、CPU及び内部メモリを含む演算処理装置で構成され、CPUが内部メモリに格納された駆動制御用のプログラムを実行することにより各種機能が実現される。各種機能は、コントローラ30が備える機能要素としての劣化度取得部31、動作条件変更部32、及び動作制御部33のそれぞれに対応する機能を含む。なお、劣化度取得部31、動作条件変更部32、及び動作制御部33の詳細については後述する。
また、コントローラ30は、圧力センサ29から供給される信号を速度指令に変換し、旋回用電動機21の駆動制御を行う。圧力センサ29から供給される信号は、旋回機構2を旋回させるために操作装置26を操作した場合の操作量を表す信号に相当する。
また、コントローラ30は、電動発電機12の運転制御(電動(アシスト)運転又は発電運転の切り替え)を行うとともに、昇降圧コンバータ100を駆動制御することによるキャパシタ19の充放電制御を行う。また、コントローラ30は、キャパシタ19の充電状態、電動発電機12の運転状態(アシスト運転又は発電運転)、及び旋回用電動機21の運転状態(力行運転又は回生運転)に基づいて、昇降圧コンバータ100の昇圧動作と降圧動作の切替制御を行い、これによりキャパシタ19の充放電制御を行う。
この昇降圧コンバータ100の昇圧動作と降圧動作の切り替え制御は、DCバス電圧検出部111によって検出されるDCバス電圧値、キャパシタ電圧検出部112によって検出されるキャパシタ電圧値、及びキャパシタ電流検出部113によって検出されるキャパシタ電流値に基づいて行われる。この場合、コントローラ30は、昇降圧コンバータ100によってDCバス電圧値を所定範囲内に制御する電圧制御を実行してもよい。具体的には、電動発電機12のアシスト運転若しくは発電運転又は旋回用電動機21の力行運転若しくは回生運転によるDCバス電圧値の変動を吸収するようにキャパシタ19を充放電させてもよい。また、昇降圧コンバータ100は、コントローラ30以外の他のコントローラと通信を介して協調し、電動発電機12のアシスト運転若しくは発電運転又は旋回用電動機21の力行運転若しくは回生運転に応じてキャパシタ19を充放電させてもよい。
以上のような構成において、電動発電機12が発電した電力は、インバータ18を介して蓄電系120のDCバス110に供給された後、昇降圧コンバータ100を介してキャパシタ19に供給され、或いは、インバータ20を介して旋回用電動機21に供給される。また、旋回用電動機21が回生運転して生成した回生電力は、インバータ20を介して蓄電系120のDCバス110に供給された後、昇降圧コンバータ100を介してキャパシタ19に供給され、或いは、インバータ18を介して電動発電機12に供給される。また、キャパシタ19に蓄積された電力は、昇降圧コンバータ100及びDCバス110を介して電動発電機12及び旋回用電動機21の少なくとも一方に供給される。なお、本実施例では、旋回用電動機21は、キャパシタ19に蓄積された電力を優先的に使用し、電動発電機12が発電した電力を補助的に使用する。
上述のような構成のハイブリッド式ショベルにおいて、コントローラ30は、キャパシタ19が所定の充電率(SOC)を維持できるようにキャパシタ19を充放電させる。
コントローラ30は、キャパシタ19のSOCの現在値に基づいて充電要求値(充電量に相当する。)及び放電要求値(放電量に相当する。)を決定し、キャパシタ19の充放電を制御する。なお、本実施例では、充電要求値は、キャパシタ19が受け入れる発電電力の最大値を意味する。また、放電要求値は、キャパシタ19が旋回用電動機21に供給する電力の最大値を意味する。コントローラ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に向けて放電させることもない。
ここで、図4を参照し、コントローラ30がキャパシタ19のSOCに基づいて充電要求値及び放電要求値を導き出す処理(以下、「要求値導出処理」とする。)について説明する。なお、図4は、要求値導出処理の流れを示すフローチャートであり、コントローラ30は、所定の制御周期で繰り返しこの要求値導出処理を実行する。
最初に、コントローラ30は、キャパシタ19のSOCを取得する(ステップS1)。本実施例では、コントローラ30は、キャパシタ電圧検出部112が検出するキャパシタ電圧値、及び、キャパシタ電流検出部113が検出するキャパシタ電流値に基づいて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の状態に基づいて放電要求値を導き出す。
図5は、SOC・要求値対応テーブルの一例を説明する図である。具体的には、図5は、キャパシタ19のSOCと放電要求値及び充電要求値との関係を示すグラフであり、横軸がSOC[%]に対応し、縦軸が要求値に対応する。なお、図5では、放電要求値を正値とし、充電要求値を負値とする。また、図5の充電要求値は、キャパシタ19の充電のために電動発電機12を発電機として機能させるためのものであり、旋回用電動機21の回生電力による充電を要求するものではない。旋回用電動機21の回生電力は、充電要求値に応じた電動発電機12の発電電力による充電とは別にキャパシタ19に充電される。
また、図5の破線で示す充電要求線CL1は、旋回用電動機21が力行運転状態の場合に採用される充電要求値の推移を表し、図5の一点鎖線で示す充電要求線CL2は、旋回用電動機21が回生運転状態の場合に採用される充電要求値の推移を表し、二点鎖線で示す充電要求線CL3は、旋回用電動機21が停止状態の場合に採用される充電要求値の推移を表す。
また、図5の破線で示す放電要求線DL1は、旋回用電動機21が力行運転状態の場合に採用される放電要求値の推移を表し、図5の一点鎖線で示す放電要求線DL2は、旋回用電動機21が回生運転状態の場合に採用される放電要求値の推移を表し、二点鎖線で示す放電要求線DL3は、旋回用電動機21が停止状態の場合に採用される放電要求値の推移を表す。
具体的には、充電要求線CL1は、SOCが40[%]以下の場合に充電要求値が値C1となり、SOCが40[%]を超えて45[%]に至るまで徐々に値ゼロに近づき、SOCが45[%]以上の場合に値ゼロとなることを表す。充電要求線CL1を採用することにより、コントローラ30は、旋回力行時にキャパシタ19の端子電圧が上限電圧を上回らないようにしながら45[%]未満のSOCが45[%]となるようにキャパシタ19を充電させる。充電要求線CL2、充電要求線CL3についても同様である。
また、放電要求線DL1は、SOCが60[%]以下の場合に放電要求値が値ゼロとなり、SOCが60[%]を超えて100[%]に至るまで一定の割合で増加し、SOCが100[%]に達した場合に値D1となることを表す。放電要求線DL1を採用することにより、コントローラ30は、旋回力行時にキャパシタ19の端子電圧が下限電圧を下回らないようにしながら60[%]以上のSOCが60[%]となるようにキャパシタ19を放電させる。放電要求線DL2、放電要求線DL3についても同様である。
次に、図6を参照し、旋回用電動機21が力行運転状態の場合に、コントローラ30が充電要求値及び放電要求値を利用してキャパシタ19の充放電を制御する処理(以下、「旋回力行時処理」とする。)について説明する。なお、図6は、旋回力行時処理の流れを示すフローチャートであり、コントローラ30は、旋回用電動機21が力行運転状態の場合に、所定の制御周期で繰り返しこの旋回力行時処理を実行する。なお、コントローラ30は、旋回力行開始時に一度だけこの旋回力行時処理を実行してもよい。
最初に、コントローラ30は、旋回用電動機21の旋回駆動に必要な出力(以下、「所要出力」とする。)が放電要求値以下であるか否かを判定する(ステップS11)。本実施例では、コントローラ30は、レゾルバ22の出力に基づいて算出される旋回速度と、インバータ20を流れる電流に基づいて算出される旋回トルクの積から所要出力を導き出す。そして、コントローラ30は、その所要出力と要求値導出処理で導き出した放電要求値とを比較する。
所要出力が放電要求値以下であると判定した場合(ステップS11のYES)、コントローラ30は、キャパシタ19が放電する電力(放電電力)のみで旋回用電動機21を駆動させる(ステップS12)。具体的には、力行運転の初期段階のように所要出力が低いときには、コントローラ30は、放電電力のみで旋回用電動機21を駆動させる。
一方、所要出力が放電要求値より大きいと判定した場合(ステップS11のNO)、コントローラ30は、充電要求値が値ゼロであるか否かを判定する(ステップS13)。本実施例では、要求値導出処理で導き出した充電要求値を参照して充電要求値が値ゼロであるか否かを判定する。なお、値ゼロの充電要求値は、キャパシタ19の充電が停止されることを意味する。
充電要求値が値ゼロであると判定した場合(ステップS13のYES)、コントローラ30は、所要出力が放電要求値と発電制限値の合計以下であるか否かを判定する(ステップS14)。なお、発電制限値は、電動発電機12が発電可能な電力の最大値を意味する。
所要出力が放電要求値と発電制限値の合計以下であると判定した場合(ステップS14のYES)、コントローラ30は、放電要求値が値ゼロであるか否かを判定する(ステップS15)。なお、値ゼロの放電要求値は、キャパシタ19の放電が停止されることを意味する。
放電要求値が値ゼロであると判定した場合(ステップS15のYES)、すなわち、キャパシタ19の放電を停止している場合、コントローラ30は、電動発電機12が発電する電力(発電電力)のみで旋回用電動機21を駆動させる(ステップS16)。
また、放電要求値が値ゼロでないと判定した場合(ステップS15のNO)、すなわち、キャパシタ19の放電を停止していない場合、コントローラ30は、キャパシタ19が放電する放電電力と電動発電機12が発電する発電電力で旋回用電動機21を駆動する(ステップS17)。
具体的には、コントローラ30は、SOCが低下するにつれて放電電力を抑制する一方で発電電力を増大させる。そのため、コントローラ30は、SOCを高い状態に維持させることで比較的高い端子電圧と比較的低い放電電流を実現して高効率化を図ることができる。
また、所要出力が放電要求値と発電制限値の合計より大きいと判定した場合(ステップS14のNO)、コントローラ30は、キャパシタ19が放電する放電要求値相当の放電電力より大きい放電電力と、電動発電機12が発電する発電制限値相当の発電電力で旋回用電動機21を駆動させる(ステップS19)。発電制限値相当の発電電力と放電要求値相当の放電電力とでは旋回用電動機21が必要とする所要出力を供給できないためである。
また、充電要求値が値ゼロでないと判定した場合(ステップS13のNO)、すなわち、キャパシタ19の充電を停止していない場合、コントローラ30は、所要出力が発電制限値から充電要求値を差し引いた値以上であるか否かを判定する(ステップS18)。
所要出力が発電制限値から充電要求値を差し引いた値以上であると判定した場合(ステップS18のYES)、コントローラ30は、キャパシタ19が放電する放電要求値相当の放電電力より大きい放電電力と、電動発電機12が発電する発電制限値相当の発電電力とで旋回用電動機21を駆動させる(ステップS19)。電動発電機12が発電する充電要求値相当の発電電力でキャパシタ19を充電させた場合、キャパシタ19は放電できず、電動発電機12だけでは旋回用電動機21が必要とする所要出力を供給できないためである。
一方、所要出力が発電制限値から充電要求値を差し引いた値未満であると判定した場合(ステップS18のNO)、コントローラ30は、電動発電機12が発電する発電電力のみで旋回用電動機21を駆動させ、且つ、電動発電機12が発電する充電要求値相当の発電電力でキャパシタ19を充電させる(ステップS20)。すなわち、電動発電機12は、所要出力に相当する電力の発電、及び、充電要求値に相当する電力の発電を行う。
上述の旋回力行時処理を繰り返し実行することにより、コントローラ30は、図5の放電要求線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の過放電を防止する。
次に、図7を参照し、旋回用電動機21が回生運転状態の場合に、コントローラ30が充電要求値及び放電要求値を利用してキャパシタ19の充放電を制御する処理(以下、「旋回回生時処理」とする。)について説明する。なお、図7は、旋回回生時処理の流れを示すフローチャートであり、コントローラ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が受け入れ可能な電力は、所定のアシスト制限値によって制限される。この場合、アシスト制限値は、電動機として機能する電動発電機12が受け入れ可能な電力の最大値を意味する。アシスト出力が大きくなり過ぎてエンジン11が吹き上がってしまうのを防止するためである。したがって、回生電力と放電要求値に相当する電力との和がアシスト制限値に相当する電力を上回る場合、コントローラ30は、放電要求値に相当する電力を低減させることで、すなわちキャパシタ19から放電される電力を低減させることで電動発電機12に供給される電力がアシスト制限値に相当する電力と等しくなるようにする。
上述の旋回回生時処理を繰り返し実行することにより、コントローラ30は、図5の充電要求線CL2で示すように、値ゼロの放電要求値に対応するSOC(例えば30%)をキャパシタ19が示す場合、回生電力の全てをキャパシタ19に供給してキャパシタ19を充電させ、且つ、充電要求値に相当する電力を電動発電機12で発電させ、その発電電力でキャパシタ19を充電させる。このようにして、コントローラ30は、キャパシタ19のSOCが低い状態にある場合には、旋回回生時であっても電動発電機12に発電させてキャパシタ19を充電させることで、SOCを高い状態に戻す。
また、図5の放電要求線DL2で示すように、値ゼロでない放電要求値に対応するSOC(例えば70%より大きい値)をキャパシタ19が示す場合、回生電力の大きさが放電要求値の大きさより大きければ、その差分電力でキャパシタ19を充電させながら、放電要求値に相当する電力を旋回用電動機21から電動発電機12に供給して電動発電機12を電動機として機能させる。このようにして、コントローラ30は、180度旋回等で大きな回生電力が発生する場合であっても、その回生電力の一部を電動発電機12で消費させることで、キャパシタ19の過充電を防止する。
また、値ゼロでない放電要求値に対応するSOC(例えば70%より大きい値)をキャパシタ19が示す場合、回生電力の大きさが放電要求値の大きさ以下であれば、値ゼロの放電要求値に対応するSOC(例えば70%)に達するまでは、回生電力と放電要求値に相当する電力との和を電動発電機12に向かわせ、電動発電機12を電動機として機能させる。このようにして、コントローラ30は、キャパシタ19の過充電を防止する。
次に、図8を参照し、旋回用電動機21が停止状態の場合に、コントローラ30が充電要求値及び放電要求値を利用してキャパシタ19の充放電を制御する処理(以下、「旋回停止時処理」とする。)について説明する。なお、図8は、旋回停止時処理の流れを示すフローチャートであり、コントローラ30は、旋回用電動機21が停止状態の場合に、所定の制御周期で繰り返しこの旋回停止時処理を実行する。
最初に、コントローラ30は、放電要求値が値ゼロであるか否かを判定する(ステップS31)。
放電要求値が値ゼロであると判定した場合(ステップS31のYES)、すなわち、キャパシタ19の放電を停止している場合、コントローラ30は、充電要求値が値ゼロでないか否かを判定する(ステップS32)。
充電要求値が値ゼロでないと判定した場合(ステップS32のYES)、すなわち、キャパシタ19の充電を停止していない場合、コントローラ30は、電動発電機12を発電機として機能させ、電動発電機12が発電する発電電力でキャパシタ19を充電させる(ステップS33)。
なお、充電要求値が値ゼロであると判定した場合(ステップS32のNO)、すなわち、キャパシタ19の充電を停止している場合、コントローラ30は、キャパシタ19を充電させない。そのため、キャパシタ19の充電のみのために電動発電機12を発電機として機能させることはない。但し、他の目的のために電動発電機12を発電機として機能させることを禁止することはない。
一方、放電要求値が値ゼロでないと判定した場合(ステップS31のNO)、すなわち、キャパシタ19の放電を停止していない場合、コントローラ30は、キャパシタ19が放電する電力で電動発電機12を駆動させる(ステップS34)。
上述の旋回停止時処理を繰り返し実行することにより、コントローラ30は、図5の充電要求線CL3で示すように、値ゼロでない充電要求値に対応するSOC(例えば30%)を示すキャパシタ19を、値ゼロの充電要求値に対応するSOC(例えば60%)まで充電させる。このようにして、コントローラ30は、例えば、エンジン11の負荷を一定にすべく電動発電機12を電動機として機能させるためのキャパシタ19の放電が増えてキャパシタ19のSOCが低い状態にある場合には、旋回停止時であってもキャパシタ19を充電させることで、キャパシタ19の過放電を防止する。
また、コントローラ30は、図5の放電要求線DL3で示すように、値ゼロでない放電要求値に対応するSOC(例えば90%)を示すキャパシタ19を、値ゼロの放電要求値に対応するSOC(例えば70%)まで放電させる。このようにして、コントローラ30は、例えば、エンジン11に意図的に負荷を掛けるために電動発電機12を発電機として機能させ、或いは、エンジン11の負荷を一定にすべく電動発電機12を電動機として機能させる機会が増えることでキャパシタ19が頻繁に充電される場合であっても、キャパシタ19のSOCが過度に高くなるのを防止できる。
また、コントローラ30は、充電要求値及び放電要求値が何れも値ゼロとなるSOC(例えば60%以上70%以下)をキャパシタ19が示す場合、キャパシタ19を充放電させないようにする。
以上の構成により、コントローラ30は、キャパシタ19の現在のSOCに対応する充電要求値及び放電要求値に基づいてキャパシタ19の充放電を制御する。そのため、キャパシタ19の充放電をより適切に制御できる。
また、コントローラ30は、旋回用電動機21の状態に応じて充電要求値及び放電要求値を変化させる。そのため、キャパシタ19の充放電をより適切に制御できる。
次に、図9を参照し、キャパシタ温度に応じてコントローラ30がSOC・要求値対応テーブルの内容を調整する処理について説明する。なお、図9は、SOC・要求値対応テーブルの別の例を示す図であり、図5に対応する。具体的には、図9は、キャパシタ19のSOCと旋回用電動機21が力行運転状態の場合に採用される放電要求値及び充電要求値との関係を示すグラフであり、横軸がSOC[%]に対応し、縦軸が出力[kW]に対応する。
また、図9の破線で示す第1放電要求線DLaは、旋回用電動機21が力行運転状態で且つキャパシタ温度が第1温度範囲内(例えば5℃以上)の場合に採用される放電要求値の推移を表し、図5の放電要求線DL1に相当する。また、破線で示す第2放電要求線DLbはキャパシタ温度が第2温度範囲内(例えば−5℃以上5℃未満)の場合に採用される放電要求値の推移を表す。同様に、破線で示す第3放電要求線DLcはキャパシタ温度が第3温度範囲内(例えば−15℃以上−5℃未満)の場合に採用される放電要求値の推移を表し、破線で示す第4放電要求線DLdは、キャパシタ温度が第4温度範囲内(例えば−15℃未満)の場合に採用される放電要求値の推移を表す。
また、図9の点線で示す第1充電要求線CLaは、旋回用電動機21が力行運転状態で且つキャパシタ温度が第1温度範囲内の場合に採用される充電要求値の推移を表し、図5の充電要求線CL1に対応する。また、点線で示す第2充電要求線CLbはキャパシタ温度が第2温度範囲内の場合に採用される充電要求値の推移を表す。同様に、点線で示す第3充電要求線CLcはキャパシタ温度が第3温度範囲内の場合に採用される充電要求値の推移を表し、点線で示す第4充電要求線CLdは、キャパシタ温度が第4温度範囲内の場合に採用される充電要求値の推移を表す。
また、図9の実線で示す第1放電制限線ULaは、キャパシタ温度が第1温度範囲内の場合の放電制限値の推移を表す。放電制限値は、キャパシタ19が放電可能な電力の最大値を意味し、キャパシタ19の過放電を防止するために用いられる。具体的には、キャパシタ19の端子電圧が所定の下限電圧を下回らないようにキャパシタ19の放電電力を制限する際に用いられる。図9ではSOCが30[%]の場合にキャパシタ19の放電電力が値D10で制限され、仮にキャパシタ19の放電電力が値D10を上回ると端子電圧が下限電圧を下回るおそれがあることを表す。また、実線で示す第2放電制限線ULbはキャパシタ温度が第2温度範囲内の場合の放電制限値の推移を表す。同様に、実線で示す第3放電制限線ULcは、キャパシタ温度が第3温度範囲内の場合の放電制限値の推移を表し、実線で示す第4放電制限線ULdは、キャパシタ温度が第4温度範囲内の場合の放電制限値の推移を表す。
また、図9の実線で示す第1充電制限線BLaは、キャパシタ温度が第1温度範囲内の場合の充電制限値の推移を表す。充電制限値は、キャパシタ19が充電可能な電力の最大値を意味し、キャパシタ19の過充電を防止するために用いられる。具体的には、キャパシタ19の端子電圧が所定の上限電圧を上回らないようにキャパシタ19の充電電力を制限する際に用いられる。図9ではSOCが55[%]の場合にキャパシタ19の充電電力が値C10で制限され、仮にキャパシタ19の充電電力が値C10を上回ると端子電圧が上限電圧を上回るおそれがあることを表す。また、実線で示す第2充電制限線BLbはキャパシタ温度が第2温度範囲内の場合の充電制限値の推移を表す。同様に、実線で示す第3充電制限線BLcは、キャパシタ温度が第3温度範囲内の場合の充電制限値の推移を表し、実線で示す第4充電制限線BLdは、キャパシタ温度が第4温度範囲内の場合の充電制限値の推移を表す。
次に、キャパシタ温度に応じて採用すべき放電要求線を変更することの効果について説明する。
図9の例では、第1放電要求線DLaは、SOCが60[%]以下の場合に値ゼロとなり、SOCが60[%]を超えて100[%]に至るまで変化率αで増加する。また、第2放電要求線DLbは、SOCが48[%]以下の場合に値ゼロとなり、SOCが48[%]を超えて100[%]に至るまで変化率αで増加する。また、第3放電要求線DLcは、SOCが40[%]以下の場合に値ゼロとなり、SOCが40[%]を超えて放電制限線に至るまで変化率αで増加し、第3放電制限線ULcのレベルに達した後は第3放電制限線ULcに沿って増加する。また、第4放電要求線DLdは、SOCが25[%]以下の場合に値ゼロとなり、SOCが25[%]を超えて100[%]に至るまで第4放電制限線ULdに沿って増加する。なお、第1放電要求線DLa、第2放電要求線DLb、及び第3放電要求線DLcのSOCに対する変化率αは、対応する放電制限線以下の領域で等しい。
このように、キャパシタ温度が低下するにつれて、放電要求値が値ゼロより大きくなるときのSOC(放電開始充電率:放電開始SOC)を低くすることで、コントローラ30は、旋回用電動機21の力行運転及び回生運転が行われる際のSOCを低減させることができる。具体的には、キャパシタ温度が例えば第1温度範囲内の場合、キャパシタ19のSOCは、第1放電要求線DLaが採用されることで力行運転及び回生運転が行われる際に60[%]〜80[%]の範囲を推移する。一方で、キャパシタ温度が例えば第4温度範囲内の場合、キャパシタ19のSOCは、第4放電要求線DLdが採用されることで力行運転及び回生運転が行われる際に25[%]〜45[%]の範囲を推移する。そのため、コントローラ30は、旋回回生時に旋回用電動機21が生成する回生電力である充電電力が充電制限線を超えるのを抑制できる。具体的には、図9に示すように、回生運転が行われる際のSOCが55[%]の場合、キャパシタ温度が第1温度範囲内であれば、キャパシタ19は、端子電圧が上限電圧を上回るのを防止しながら、値C10の充電電力を受け入れることができる。しかしながら、キャパシタ温度が第2温度範囲内であれば、キャパシタ19は、端子電圧が上限電圧を上回るのを防止するため、値C11より大きい充電電力を受け入れることができない。さらに、キャパシタ温度が第3温度範囲内であれば、値C12より大きい充電電力を受け入れることができず、キャパシタ温度が第4温度範囲内であれば、値C13より大きい充電電力を受け入れることができない。このように、キャパシタ19が受け入れ可能な充電電力(受け入れ可能充電電力)は、キャパシタ温度が低い程小さくなる。一方で、受け入れ可能充電電力はSOCが小さい程大きくなる。この関係から、コントローラ30は、キャパシタ温度が低い程、放電開始SOCを低くして旋回用電動機21の力行運転及び回生運転が行われる際のSOCを低減させることで、旋回回生時の回生電力(充電電力)が充電制限線を超えるのを抑制できる。
また、キャパシタ19の内部抵抗Rはキャパシタ温度が低い程大きい。さらに、コントローラ30は、キャパシタ温度が低い程、放電開始SOCを低くするため、充放電時のキャパシタ19の端子電圧も低くする。そのため、同じ放電電力を得るために流れる放電電流は大きくなり、また、同じ充電電力を得るために流れる充電電流は大きくなる。したがって、キャパシタ19の発熱量は、キャパシタ温度が低い程、内部抵抗Rの増大及び充放電電流の増大に起因して大きくなる。その結果、キャパシタ19の暖機を促進できる。なお、キャパシタ19の暖機は、キャパシタ温度が所定温度以下の場合に、キャパシタ19を充放電させることでキャパシタ温度を強制的に上昇させる処理である。本実施例では、ショベルが無操作状態であればエンジン11がアイドリング中であっても電動発電機12等を用いてキャパシタ19を充放電させることで実現される。
反対に、キャパシタ19の内部抵抗Rはキャパシタ温度が高い程小さい。さらに、コントローラ30は、キャパシタ温度が高い程、放電開始SOCを高くするため、充放電時のキャパシタ19の端子電圧も高くする。そのため、同じ放電電力を得るために流れる放電電流は小さくなり、また、同じ充電電力を得るために流れる充電電流は小さくなる。したがって、キャパシタ19の発熱量は、キャパシタ温度が高い程、内部抵抗Rの低下及び充放電電流の低下に応じて小さくなる。その結果、熱損失を減らし、キャパシタ19を高効率で利用できる。
なお、図9では、放電要求線は直線を描くように設定されるが、曲線を描くように設定されてもよく、折れ線を描くように設定されてもよい。
また、図9では、キャパシタ温度が第1温度範囲内(例えば5℃以上)、第2温度範囲内(例えば−5℃以上5℃未満)、第3温度範囲内(例えば−15℃以上−5℃未満)、及び第4温度範囲内(例えば−15℃未満)のときの放電要求線、放電制限線、充電要求線、及び充電制限線を示すが、他の温度刻みで放電要求線、放電制限線、充電要求線、及び充電制限線が存在してもよい。
次に、図10を参照し、キャパシタ19のSOCが大きくなるにつれて且つキャパシタ温度が低下するにつれて減少する受け入れ可能充電電力に対処するために、コントローラ30が旋回力行時の旋回速度を制限する処理について説明する。なお、図10は、キャパシタ19のSOCと旋回速度制限値との関係を示す図であり、横軸がSOC[%]に対応し、縦軸が旋回速度制限値[rpm]に対応する。
具体的には、キャパシタ19の受け入れ可能充電電力は、旋回開始時のキャパシタ19のSOC及びキャパシタ温度に応じて決まる。例えば、図9に示すように、キャパシタ温度が第2温度範囲内で且つSOCが55[%]であれば、第2充電制限線BLbを参照すると、受け入れ可能充電電力は値C11となる。そして、受け入れ可能充電電力が決まれば、その受け入れ可能充電電力の範囲内で実現可能な最大制動トルクが決まり、その最大制動トルクが必要となるときの最大旋回速度(旋回速度制限値)が決まる。
本実施例では、旋回速度制限値Nclは、充電制限値をWclとし、最大制動トルクをTmaxとし、アシスト制限値に相当する電力をWaとすると、
で表される。なお、ξ1、ξ2は効率を表す。また、旋回開始時は、例えば、旋回操作レバーの操作量が所定値を超えた時点、旋回速度が所定速度に達した時点等を意味する。また、コントローラ30は、旋回開始時毎に旋回速度制限値を決定する。
図10は、上述のようにして決定される旋回速度制限値のSOCに対する推移を示す。具体的には、点線で示す旋回速度制限線TL(20℃)は、キャパシタ温度が20℃のときの旋回速度制限値の推移を表し、点線で示す旋回速度制限線TL(−7℃)は、キャパシタ温度が−7℃のときの旋回速度制限値の推移を表す。また、点線で示す旋回速度制限線TL(−10℃)は、キャパシタ温度が−10℃のときの旋回速度制限値の推移を表し、点線で示す旋回速度制限線TL(−20℃)は、キャパシタ温度が−20℃のときの旋回速度制限値の推移を表す。
また、本実施例では、旋回速度は最大値Rmaxで電気的に或いは機械的に制限される。また、旋回開始時のSOCが55[%]以下であり且つキャパシタ温度が−7℃以下の場合には、SOCが55[%]のときの旋回速度制限値が採用される。旋回操作が行われる度に旋回速度制限値が変化して実際の最大旋回速度が変化するのを防止するためである。具体的には、旋回開始時のSOCが55[%]以下であり且つキャパシタ温度が−10℃の場合には、旋回速度制限値は値Rbに設定される。また、旋回開始時のSOCが55[%]以下であり且つキャパシタ温度が−20℃の場合には、旋回速度制限値は値Raに設定される。なお、図9に示すようなSOC・要求値対応テーブルを採用すれば、キャパシタ温度が−7℃以下の場合、SOCが55[%]以下の範囲で旋回操作が行われるのが通常である。そのため、SOCが55[%]より大きい範囲で旋回速度制限値が旋回速度制限線に沿って変化するようにしたとしても、旋回操作が行われる度に実際の最大旋回速度が変化することはない。
このようにして、コントローラ30は、キャパシタ温度に応じて最大旋回速度を制限する。また、コントローラ30は、キャパシタ温度が上昇するにつれて最大旋回速度の制限を徐々に解除する。
次に、図11を参照し、コントローラ30が最大旋回速度の制限に合わせて旋回力行時の最大旋回トルク及びメインポンプ14のポンプ最大出力を制限する処理について説明する。なお、図11上図は、旋回速度制限値と旋回トルク制限値との関係を示す図であり、横軸が旋回速度制限値[rpm]に対応し、縦軸が旋回トルク制限値[%]に対応する。また、図11下図は、旋回速度制限値とポンプ電流制限値との関係を示す図であり、横軸が旋回速度制限値[rpm]に対応し、縦軸がポンプ電流制限値[mA]に対応する。
例えば、コントローラ30は、旋回開始時のSOCが55[%]以下であり且つキャパシタ温度が−10℃の場合には、旋回速度制限値を値Rbに制限する。この場合、コントローラ30は、図11上図に示すような対応テーブルを参照し、旋回トルク制限値として値Sbを導き出す。また、コントローラ30は、図11下図に示すような対応テーブルを参照し、ポンプ電流制限値として値Pbを導き出す。
同様に、コントローラ30は、旋回開始時のSOCが55[%]以下であり且つキャパシタ温度が−20℃の場合には、旋回速度制限値を値Ra(<Rb)に制限する。この場合、コントローラ30は、旋回トルク制限値として値Sa(<Sb)を導き出し、ポンプ電流制限値として値Pa(<Pb)を導き出す。
なお、コントローラ30は、旋回速度制限値と同様、旋回開始時毎に旋回トルク制限値及びポンプ電流制限値を決定する。
旋回力行時の旋回トルクの制限は上部旋回体3の加速度の制限をもたらし、ポンプ電流の制限は油圧アクチュエータの動作速度の制限をもたらす。また、その後のキャパシタ温度の上昇による旋回トルクの制限の緩和は上部旋回体3の加速度の制限の緩和をもたらし、ポンプ電流の制限の緩和は油圧アクチュエータの動作速度の制限の緩和をもたらす。そのため、旋回速度制限値が最大値Rmax未満に制限されている場合にブーム上げ旋回が行われると、旋回速度の制限に合わせてブーム4の上昇速度も制限される。また、その後のキャパシタ温度の上昇により旋回速度制限値が最大値Rmaxに向かって増大するにつれて旋回速度の制限が緩和され、その旋回速度の制限の緩和に合わせてブーム4の上昇速度の制限も緩和される。その結果、コントローラ30は、旋回速度に合った油圧アクチュエータの動作速度を操作者に提供でき、操作感が損なわれるのを防止できる。
なお、コントローラ30は、旋回速度制限値として最大値Rmaxを採用した場合には、旋回トルク制限値として値Smaxを導き出し、ポンプ電流制限値として値Pmaxを導き出す。すなわち、コントローラ30は、最大旋回速度を制限しない場合には、最大旋回トルク及びポンプ最大出力を制限しない。
以上の構成により、コントローラ30は、キャパシタ温度の低下に応じて充電制限値及び放電制限値を低減させ且つ放電要求値を変化させる。本実施例では、SOCの変化に対する充電制限値及び放電制限値のそれぞれの変化を低減させ、且つ、SOCの変化に対する放電要求値の変化を低減させる。具体的には、キャパシタ温度の低下に応じて放電制限線及び充電制限線のそれぞれの制限値を小さくする。また、キャパシタ温度の低下に応じて旋回力行時の放電要求線の傾きを小さくする。そのため、コントローラ30は、キャパシタ温度が低い状態で旋回用電動機21を駆動させた場合であっても、キャパシタ19の過充電及び過放電を防止できる。その結果、コントローラ30は、キャパシタ19の暖機が完了する前であっても、キャパシタ19に悪影響を与えることなく、旋回用電動機21を駆動させることができる。
また、コントローラ30は、キャパシタ温度の低下に応じて、放電要求値を値ゼロより大きい値にするキャパシタ19の充電率の下限を低減させる。本実施例では、コントローラ30は、キャパシタ温度の低下に応じて放電開始SOCを低減させる。そのため、コントローラ30は、キャパシタ温度が低い程、キャパシタ19のSOCがより低い範囲で推移するように、旋回力行時及び旋回回生時のキャパシタ19の充放電を制御できる。その結果、キャパシタ温度が低い程、より発熱し易い条件でキャパシタ19を充放電させてキャパシタ19の暖機を促進できる。また、キャパシタ温度が低い程、旋回回生開始時のSOCを低めに誘導するため、旋回回生中にキャパシタ19の端子電圧が上限電圧に達するのを防止でき、キャパシタ19の過充電を防止できる。
なお、上述の実施例では、コントローラ30は、旋回用電動機21が力行運転状態の場合にキャパシタ温度に応じてSOC・要求値対応テーブルの内容を調整する。しかしながら、コントローラ30は、旋回用電動機21が力行運転状態の場合に限ってSOC・要求値対応テーブルの内容を調整するのではなく、旋回用電動機21が回生運転状態及び停止状態の場合にもキャパシタ温度に応じてSOC・要求値対応テーブルの内容を調整してもよい。
以上の構成により、コントローラ30は、キャパシタ温度に応じて充放電に関する各種設定を変更することで、キャパシタ温度が低い場合であっても、キャパシタ19の過充電及び過放電を防止しながらショベルを適切に機能させることができる。
しかしながら、キャパシタ19の温度特性はキャパシタ19の劣化に伴って変化する。そのため、コントローラ30は、充放電に関する各種設定が例えば新品時のキャパシタ19にとって最適となるように固定されている場合には、劣化したキャパシタ19の過充電及び過放電を適切に防止できないおそれがある。その結果、コントローラ30は、ショベルを適切に動作させることができず、ショベルの作業性を低下させてしまうおそれがある。また、ショベルの操作者は、劣化したキャパシタ19の新品への早期の交換を余儀なくされるおそれがある。
そこで、コントローラ30は、キャパシタ19の劣化の進行に応じて充放電に関する各種設定を変更する処理(以下、「劣化時設定変更処理」とする。)を実行する。例えば、コントローラ30は、キャパシタ19の劣化度合いを把握し、その劣化度合いに応じてキャパシタ19の動作温度を制御する。具体的には、コントローラ30は、キャパシタ19の劣化が進むにつれてキャパシタ19の動作温度を上昇させる。キャパシタ19の内部抵抗をキャパシタ新品時の内部抵抗に近づけるためである。また、キャパシタ19の内部抵抗はキャパシタ温度が低いほど大きく、且つ、キャパシタ19の劣化が進むにつれて大きくなるためである。なお、キャパシタ19の動作温度は、ショベルの作動中におけるキャパシタ19の温度を意味する。
このようにして、コントローラ30は、キャパシタ19が劣化した場合であっても、例えば内部抵抗の観点から見たときには、劣化したキャパシタ19をあたかも新品時のように機能させる。そして、新品時に適した制御概念がそのまま利用されたとしても、キャパシタ19の過充電及び過放電を防止しながらショベルを適切に機能させるようにする。なお、制御概念は、例えばキャパシタ温度が所定温度未満のときには充電を制限するといった概略的な制御内容を意味する。この場合、コントローラ30は、キャパシタ19の劣化の進行に応じてその所定温度の設定内容を自動的に変更することで、キャパシタ19の劣化による制御概念に対する影響を緩和し或いは無くすことができる。その結果、コントローラ30は、キャパシタ19が劣化した場合であっても、ショベルの作業性の低下を防止できる。
なお、以下では、上述の劣化時設定変更処理を実現するコントローラ30の各種機能要素(劣化度取得部31、動作条件変更部32、及び動作制御部33)の詳細にについて説明する。
劣化度取得部31は、蓄電装置の劣化度を取得する機能要素であり、例えば蓄電装置の静電容量、内部抵抗、劣化状態(SOH(State of Health))等に基づいて蓄電装置の劣化度を取得する。蓄電装置の劣化度は蓄電装置の劣化度合いを表す指標であり、例えば、劣化度が決まれば蓄電装置の温度と内部抵抗との対応関係が一意に決まる。本実施例では、劣化度取得部31は、キャパシタ19の内部抵抗に基づいてキャパシタ19の劣化度を取得する。
具体的には、劣化度取得部31は、所定時間(例えば10時間)が経過する度に、キャパシタ温度を検出し、且つ、キャパシタ19の内部抵抗を導き出す。キャパシタ温度は温度センサM2によって検出される。また、内部抵抗の導出は、キャパシタ電圧検出部112が検出するキャパシタ電圧値とキャパシタ電流検出部113が検出するキャパシタ電流値とに基づく。上述のように、キャパシタ19の開放電圧をVc[V]とし、内部抵抗をR[Ω]とし、充電電流をIc[A]とすると、キャパシタ19の充電時の端子電圧V2[V]はV2=Vc+R×Icで表されるためであり、端子電圧V2、開放電圧Vc、及び充電電流Icが決まれば内部抵抗Rが決まるためである。
より具体的には、劣化度取得部31は、前回の内部抵抗の導出から所定時間が経過したと判定した場合、キャパシタ19の充放電が行われていない状態でキャパシタ電圧検出部112が検出したキャパシタ電圧値(第1電圧値)を開放電圧Vc[V]とする。この場合の第1電圧値はキャパシタ19の端子電圧V2[V]に相当し、且つ、キャパシタ19の開放電圧Vc[V]に相当する。充電電流Ic[A]が0[A]であることから、端子電圧V2[V]が開放電圧Vc[V]に等しいためである。
その後、劣化度取得部31は、電動発電機12を発電機として機能させ、電動発電機12が発電した電力を用いて所定の充電電流Ic[A](例えば100[A])でキャパシタ19を充電する。
この場合のキャパシタ電圧値(第2電圧値)は、Vc+R×Icで表されるキャパシタ19の端子電圧V2[V]に相当する。したがって、キャパシタ19の内部抵抗Rは、(V2−Vc)/Ic、すなわち、第2電圧値から第1電圧値を差し引いた値を所定の充電電流Icの値で除した値として導出される。
その後、劣化度取得部31は、キャパシタ温度と内部抵抗Rとの組み合わせからキャパシタ19の劣化度を導出する。本実施例では、キャパシタ19の劣化度は基準内部抵抗値に対する現在の内部抵抗値の比(劣化率)で表され、劣化度が高いほど劣化が進んでいることを示す。なお、基準内部抵抗値はキャパシタ新品時の内部抵抗値を表し、キャパシタ温度毎にNVRAM等に予め設定されている。
そして、劣化度取得部31は、基準内部抵抗値に対する現在の内部抵抗値の比(劣化率)を劣化度として導出する。なお、劣化率は、キャパシタ新品時に値「1」であり、キャパシタ19の劣化が進むにつれて増大する。
図12は、キャパシタ19の温度と内部抵抗との対応関係の一例を示す図であり、横軸にキャパシタ19の温度を配し、縦軸にキャパシタ19の内部抵抗を配する。また、新品時のキャパシタ19に関する対応関係を実線で示し、キャパシタ19が劣化したときの対応関係を破線で示す。また、図12からは、キャパシタ19の劣化度に関係なく、キャパシタ19の温度が高いほど内部抵抗が低いという知見が得られる。また、劣化したキャパシタ19では、ある温度のときに導き出される内部抵抗値は同じ温度におけるキャパシタ新品時の内部抵抗値(すなわち基準内部抵抗値)よりも高いという知見が得られる。これは、言い換えれば、劣化したキャパシタ19であっても、ある温度のときに導き出される内部抵抗値は、その温度より低い温度におけるキャパシタ新品時の内部抵抗値(基準内部抵抗値)に対応することを意味する。そのため、劣化したキャパシタ19の温度を制御すれば、キャパシタ新品時と同様の内部抵抗状態を意図的に創出できることが分かる。以下では、このキャパシタ温度の制御について詳述する。
図12において、点P1は現在の温度T1と現在の内部抵抗値R1との関係を示し、点P2は現在の温度T1とその温度T1における基準内部抵抗値R2との関係を示す。この場合、キャパシタ19の劣化率Dは内部抵抗値R1を基準内部抵抗値R2で除した値D1(=R1/R2>1)で表され、破線は各キャパシタ温度での劣化率D1の点を繋いだ線に相当する。同様に、実線はキャパシタ19の新品時の各キャパシタ温度での劣化率D0(=Rb/Rb=1)を繋いだ線に相当する。したがって、破線上の別の点である点P3は、劣化率D1のキャパシタ19の温度が温度T2(>T1)になったときの内部抵抗が値R2となることを示す。同様に、実線上の別の点である点P4は、新品時のキャパシタ19の温度が温度T2になったときの内部抵抗(基準内部抵抗値)が値R3となることを示す。
また、図12は、劣化率D1のキャパシタ19の温度が温度T2のときの内部抵抗値と新品時のキャパシタ19の温度が温度T1のときの内部抵抗値とが同じであることを示す。例えば、劣化率D1のキャパシタ19の温度が−14℃のときの内部抵抗値は、新品時のキャパシタ19の温度が−20℃のときの内部抵抗値に等しい。また、劣化率D1のキャパシタ19の温度が−4℃、9℃、29℃のときの内部抵抗値はそれぞれ、新品時のキャパシタ19の温度が−10℃、0℃、20℃のときの内部抵抗値に等しい。これは、特定の温度状態にある劣化したキャパシタ19の内部抵抗値は、別の特定の温度状態にある新品時のキャパシタ19の内部抵抗値に1対1で対応することを表す。
したがって、劣化度取得部31は、温度センサM2が検出するキャパシタ19の現在の温度と劣化度取得部31が導出する現在の内部抵抗値と図12に示すような対応関係を示す参照マップとに基づいてキャパシタ19が任意の温度になったときの内部抵抗値を推定できる。具体的には、劣化度取得部31は、現在のキャパシタ温度と現在の内部抵抗値とから導き出した劣化率に目的とするキャパシタ温度の基準内部抵抗値を乗ずることでその目的とするキャパシタ温度となったときのキャパシタ19の内部抵抗値を推定できる。
なお、上述では、何れのキャパシタ温度においても劣化率が等しいことを前提とする。しかしながら、本発明はこの前提に限定されるものではない。例えば、劣化度によって特定されるキャパシタ温度と内部抵抗との対応関係は、各キャパシタ温度における劣化率が異なるように予め設定されていてもよい。この場合、キャパシタ19の劣化度は劣化率以外の指標を用いて特定される。
また、キャパシタ19のキャパシタ温度と内部抵抗との対応関係は、ショベルの累積稼働時間と対応付けて予め設定されていてもよい。この場合、劣化度取得部31は、例えば、NVRAM等を用いて管理されるショベルの累積稼働時間を劣化度として取得し、その劣化度からキャパシタ19のキャパシタ温度と内部抵抗との対応関係を特定してもよい。
また、劣化度取得部31は、ショベル稼働中のキャパシタ19の温度、充放電電流、充放電電圧の推移等のキャパシタ19の過去の使用状況に関するデータに基づいて導出した劣化度からキャパシタ19のキャパシタ温度と内部抵抗との対応関係を特定してもよい。
また、上述では、劣化度取得部31は、所定時間(例えば10時間)が経過する度に、キャパシタ温度を検出し、且つ、キャパシタ19の内部抵抗を導き出す。しかしながら、劣化度取得部31は、所定時間が経過し、且つ、キャパシタ温度が所定温度以上の場合に限り、キャパシタ19の内部抵抗を導き出すようにしてもよい。キャパシタ温度が低いほどキャパシタ温度の変動に対する内部抵抗の変動の割合が大きくなり、正確な内部抵抗の導出が難しくなるためである。
動作条件変更部32は、劣化度取得部31が導出した蓄電装置の劣化度に応じて蓄電装置及び蓄電装置に関連する機器の少なくとも一方の動作条件を変更する機能要素である。本実施例では、動作条件変更部32は、劣化度取得部31が導出したキャパシタ19の劣化度に応じてキャパシタ19及びキャパシタ19に関連する機器の動作条件を変更する。
具体的には、動作条件変更部32は、キャパシタ19の劣化度に応じてキャパシタ19の動作温度である管理温度を増減させる。例えば、動作条件変更部32は、劣化度の増大に伴ってキャパシタ19の動作温度である管理温度を増大させる。そのため、動作条件変更部32は、キャパシタ19が劣化した場合であっても内部抵抗が比較的低い状態でキャパシタ19を充放電させることができる。その結果、内部抵抗が比較的高い状態でキャパシタ19を充放電させる場合に比べ、ショベルの作業性を向上できる。
例えば、動作条件変更部32は、キャパシタ19の劣化度によって決まるキャパシタ温度と内部抵抗との対応関係を用いてキャパシタ19の暖機に関する動作条件を変更してもよい。キャパシタ19の暖機は、キャパシタ温度が所定温度以下の場合に、充放電手段の一例である電動発電機12によりキャパシタ19を充放電させることでキャパシタ温度を強制的に上昇させる処理である。具体的には、動作条件変更部32は、キャパシタ19の劣化度が高いほど暖機開始温度(キャパシタ19の暖機を開始させる際のキャパシタ温度)及び暖機終了温度(キャパシタ19の暖機を終了させる際のキャパシタ温度)を高くしてもよい。また、動作条件変更部32は、暖機開始温度及び暖機終了温度の変更に合わせ、キャパシタ19を冷却するための冷却手段の一例であるウォータポンプの作動開始温度及び作動終了温度を変更してもよい。なお、暖機開始温度及び暖機終了温度は充放電手段の動作条件の一例としての加温条件を構成し、ウォータポンプの作動開始温度及び作動終了温度は冷却手段の動作条件の一例としての冷却条件を構成する。そして、動作条件変更部32は、加温条件及び冷却条件の少なくとも一方を変更することにより、キャパシタ19の動作温度である管理温度を増大させてもよい。
また、動作条件変更部32は、蓄電装置の劣化度に応じて蓄電装置の温度毎に設定される蓄電装置の充電率と充放電要求値及び充放電制限値との対応関係を変更してもよい。具体的には、動作条件変更部32は、キャパシタ19の劣化度に応じ、図9に示すようなキャパシタ19の温度毎に設定されるキャパシタ19のSOCと充放電要求値及び充放電制限値との対応関係を変更してもよい。なお、充放電要求値は充電要求値及び放電要求値を含み、充放電制限値は充電制限値及び放電制限値を含む。
また、動作条件変更部32は、蓄電装置の劣化度に応じて蓄電装置の温度毎に設定される蓄電装置の充電率と旋回用電動機の最大旋回速度との対応関係を変更してもよい。具体的には、動作条件変更部32は、キャパシタ19の劣化度に応じ、図10に示すようなキャパシタ19の温度毎に設定されるキャパシタ19のSOCと旋回用電動機21の最大旋回速度との対応関係を変更してもよい。
図13は、動作条件変更部32によりキャパシタ19の劣化度に応じて変更されるキャパシタ19及びキャパシタ19に関連する機器の動作条件の具体例を示す。
具体的には、図13は、キャパシタ19の劣化度が「低」レベル(例えば1.0(新品時)≦劣化率D<1.1)の場合に暖機開始温度、暖機終了温度がそれぞれ−5℃、−1℃に設定され、劣化度が「中」レベル(例えば1.1≦劣化率D<1.2)の場合にそれぞれ−2℃、2℃に設定され、且つ、劣化度が「高」レベル(例えば劣化率D≧1.2)の場合にそれぞれ1℃、5℃に設定されることを示す。
より具体的には、動作条件変更部32は、図12に示すような参照マップを参照し、新品時のキャパシタ19の暖機開始温度(−5℃)における内部抵抗値(すなわち基準内部抵抗値)を導き出す。そして、その基準内部抵抗値と同じ内部抵抗値をもたらすキャパシタ温度を現在の劣化が進んだキャパシタ19について導き出して新たな暖機開始温度として設定する。暖機終了温度についても同様である。なお、暖機開始温度及び暖機終了温度はキャパシタ19の劣化が進むにつれて高くなる。すなわち、キャパシタ19の劣化度合いが高いほど高い。しかしながら、暖機開始温度及び暖機終了温度が高くなったとしても暖機時間が過度に長くなることはない。キャパシタ19の劣化が進むにつれて内部抵抗が高くなりキャパシタ19が発熱し易くなるためである。
このように、動作条件変更部32は、キャパシタ19の劣化度が高くなるほど暖機開始温度及び暖機終了温度を高くする。すなわち、キャパシタ19の劣化度が高くなるほどより高いキャパシタ温度までキャパシタ19を暖機する。そのため、動作条件変更部32は、キャパシタ19が劣化した場合であっても内部抵抗が比較的低い状態でキャパシタ19を充放電させることができる。その結果、内部抵抗が比較的高い状態でキャパシタ19を充放電させる場合に比べ、ショベルの作業性を向上できる。
また、図13は、キャパシタ19の劣化度が「低」レベルの場合に旋回速度制限開始温度が−7℃に設定され、劣化度が「中」レベルの場合に−3℃に設定され、且つ、劣化度が「高」レベルの場合に0℃に設定されることを示す。なお、旋回速度制限開始温度は、旋回速度制限値が最大値Rmax未満に制限される温度の最大値を意味する。例えば、図10では旋回速度制限開始温度は−7℃であり、キャパシタ温度が−7℃より大きければ、旋回速度制限線TL(−7℃)で示すように、SOCが55%以下のときに旋回速度制限値が最大値Rmaxに制限されるのみで最大値Rmax未満に制限されることはない。
このように、動作条件変更部32は、キャパシタ19の劣化度が高くなるほど旋回速度制限開始温度を高くする。すなわち、キャパシタ19の劣化度が高くなるほどより高いキャパシタ温度で旋回速度制限値が最大値Rmax未満に制限されるようにする。これは、キャパシタ温度が同じであれば、キャパシタ19の劣化が進むにつれて旋回用電動機21の最大旋回速度が低くなることを意味する。すなわち、キャパシタ温度が同じであれば、最大旋回速度は、キャパシタ19の劣化度合いが高いほど低いことを意味する。そのため、動作条件変更部32は、キャパシタ19が劣化した場合であっても、旋回回生時に充放電手段の別の一例である旋回用電動機21が生成する回生電力である充電電力が充電制限線を超えるのを抑制できる。
また、動作条件変更部32は、暖機開始温度を変更する場合と同様の方法で、劣化度に応じて旋回速度制限開始温度を変更する。具体的には、図12に示すような参照マップを参照し、新品時のキャパシタ19の旋回速度制限開始温度(−7℃)における内部抵抗値(すなわち基準内部抵抗値)を導き出す。そして、その基準内部抵抗値と同じ内部抵抗値をもたらすキャパシタ温度を現在の劣化が進んだキャパシタ19について導き出して新たな旋回速度制限開始温度として設定する。
また、図13は、キャパシタ19の劣化度が「低」レベルの場合、キャパシタ温度が5℃以上のときに第1充(放)電要求線/制限線(第1充電要求線CLa、第1放電要求線DLa、第1充電制限線BLa、及び第1放電制限線ULa)が採用されることを示す。また、キャパシタ温度が−5℃以上5℃未満のときに第2充(放)電要求線/制限線が採用され、キャパシタ温度が−15℃以上−5℃未満のときに第3充(放)電要求線/制限線が採用され、キャパシタ温度が−15℃未満のときに第4充(放)電要求線/制限線が採用されることを示す。また、図13は、キャパシタ19の劣化度が「中」レベルの場合、キャパシタ温度が10℃以上のときに第1充(放)電要求線/制限線が採用され、キャパシタ温度が−2℃以上10℃未満のときに第2充(放)電要求線/制限線が採用されることを示す。また、キャパシタ温度が−13℃以上−2℃未満のときに第3充(放)電要求線/制限線が採用され、キャパシタ温度が−13℃未満のときに第4充(放)電要求線/制限線が採用されることを示す。また、図13は、キャパシタ19の劣化度が「高」レベルの場合、キャパシタ温度が14℃以上のときに第1充(放)電要求線/制限線が採用され、キャパシタ温度が1℃以上14℃未満のときに第2充(放)電要求線/制限線が採用されることを示す。また、キャパシタ温度が−12℃以上1℃未満のときに第3充(放)電要求線/制限線が採用され、キャパシタ温度が−12℃未満のときに第4充(放)電要求線/制限線が採用されることを示す。
このように、動作条件変更部32は、キャパシタ19の劣化度が高くなるほど各充(放)電要求線/制限線に対応する温度範囲を高くする。すなわち、キャパシタ19の劣化度が高くなるほど、充電制限値及び放電制限値のそれぞれが低めに設定され、且つ、放電開始SOCが小さくなるように充電要求値及び放電要求値のそれぞれが設定されるようにする。これは、キャパシタ温度が同じであれば、キャパシタ19の劣化が進むにつれ、充電制限値及び放電制限値が小さくなり、且つ、充電要求値及び放電要求値がゼロになるときのキャパシタ19の充電率(例えば放電開始SOC)が小さくなることを意味する。すなわち、キャパシタ温度が同じであれば、充電制限値及び放電制限値、並びに充電要求値及び放電要求値がゼロになるときのキャパシタ19の充電率(例えば放電開始SOC)は、キャパシタ19の劣化が高いほど小さいことを意味する。そのため、動作条件変更部32は、キャパシタ19が劣化した場合であっても、キャパシタ19の過充電及び過放電が発生するのを抑制できる。
また、動作条件変更部32は、暖機開始温度及び旋回速度制限開始温度を変更する場合と同様の方法で、劣化度に応じて各充(放)電要求線/制限線に対応する温度範囲を変更する。具体的には、図12に示すような参照マップを参照し、新品時のキャパシタ19の各充(放)電要求線/制限線に対応する温度範囲の上限及び下限における内部抵抗値(すなわち基準内部抵抗値)を導き出す。そして、その基準内部抵抗値と同じ内部抵抗値をもたらすキャパシタ温度を現在の劣化が進んだキャパシタ19について導き出して新たな温度範囲の上限及び下限として設定する。
なお、キャパシタ19の劣化度は、劣化率に基づいて「低」、「中」、「高」の3段階に分類されるが、2段階に分類されてもよく、4段階以上に分類されてもよい。また、劣化率の値がそのまま劣化度とされてもよい。
動作制御部33は、動作条件変更部32が変更した動作条件にしたがって蓄電装置及び蓄電装置に関連する機器の少なくとも一方を動作させる機能要素である。本実施例では、動作条件変更部32が変更した動作条件にしたがってキャパシタ19及びキャパシタ19に関連する機器を動作させる。
例えば、動作制御部33は、蓄電装置の温度が暖機開始温度未満となった場合に蓄電装置の充放電を開始させ、且つ、蓄電装置の温度が暖機終了温度以上となった場合に蓄電装置の充放電を停止させてもよい。具体的には、動作制御部33は、キャパシタ温度が暖機開始温度未満となった場合に電動発電機12によるキャパシタ19の充放電を開始させ、且つ、キャパシタ温度が暖機終了温度以上となった場合に電動発電機12によるキャパシタ19の充放電を停止させてもよい。
また、動作制御部33は、蓄電装置の温度と充電率で決まる最大旋回速度(旋回速度制限値)以下に旋回用電動機の旋回速度を制限してもよい。具体的には、動作制御部33は、キャパシタ温度とSOCで決まる最大旋回速度(旋回速度制限値)以下に旋回用電動機21の旋回速度を制限してもよい。この場合、動作制御部33は、図11で示すように、最大旋回速度(旋回速度制限値)に対応する旋回トルク制限値を用いて旋回トルク(旋回加速度)を制限してもよく、最大旋回速度(旋回速度制限値)に対応するポンプ電流制限値を用いてポンプ電流(メインポンプ14の吐出量)を制限してもよい。
また、動作制御部33は、蓄電装置の温度と充電率で決まる充放電要求値及び充放電制限値にしたがって蓄電装置の充放電を制御してもよい。具体的には、動作制御部33は、図9で示すように、キャパシタ温度とSOCで決まる充電要求値、放電要求値、充電制限値、及び放電制限値にしたがってキャパシタ19の充放電を制御してもよい。
なお、動作制御部33は、温度センサM2の検出値をキャパシタ温度とする。また、キャパシタ電圧検出部112が検出するキャパシタ電圧値、及び、キャパシタ電流検出部113が検出するキャパシタ電流値に基づいてSOCを算出する。
以上の構成により、コントローラ30は、キャパシタ19が劣化した場合には、ショベルの作動中におけるキャパシタ温度が劣化前と比べて相対的に高くなるように制御する。具体的には、コントローラ30は、キャパシタ19の劣化度に応じてキャパシタ19及びキャパシタ19に関連する機器(電動発電機12、旋回用電動機21等)の少なくとも一方の動作条件を変更する。そして、変更した動作条件にしたがってキャパシタ19及びキャパシタ19に関連する機器の少なくとも一方を動作させる。したがって、コントローラ30は、例えば内部抵抗値の観点からすると、新品時のキャパシタ19と同じ条件で、劣化したキャパシタ19を動作させることができる。そのため、コントローラ30を搭載するショベルは、キャパシタ19が劣化した場合であっても、作業性の低下を防止できる。
また、キャパシタ19の劣化が進んだ場合であってもショベルの作業性の低下を防止できるため、キャパシタ19の交換タイミングを遅らせることができる。
また、コントローラ30は、キャパシタ19の劣化度に応じて変更した動作条件にしたがってキャパシタ19及びキャパシタ19に関連する機器の少なくとも一方を動作させる。そのため、キャパシタ19の劣化度に応じてキャパシタ19を適切に動作させることができ、過充電、過放電等の発生を防止できる。
以上、本発明の好ましい実施例について詳説したが、本発明は、上述した実施例に制限されることはなく、本発明の範囲を逸脱することなしに上述した実施例に種々の変形及び置換を加えることができる。
例えば、上述の実施例では、劣化率は、基準内部抵抗値に対する現在の内部抵抗値の比(劣化率)で表される。しかしながら、本発明はこの構成に限定されるものではない。例えば、内部抵抗値の代わりに静電容量が導出される場合、劣化率は、基準静電容量に対する現在の静電容量の比として表されてもよい。この場合、基準静電容量はキャパシタ新品時の静電容量を表し、キャパシタ温度毎にNVRAM等に予め設定されている。