図1は、本発明の第一実施例に係るハイブリッド式ショベルを示す側面図である。
ハイブリッド式ショベルの下部走行体1には、旋回機構2を介して上部旋回体3が搭載されている。上部旋回体3には、ブーム4が取り付けられている。ブーム4の先端にはアーム5が取り付けられ、アーム5の先端にはバケット6が取り付けられている。ブーム4、アーム5及びバケット6は、ブームシリンダ7、アームシリンダ8、及びバケットシリンダ9によりそれぞれ油圧駆動される。上部旋回体3には、キャビン10が設けられ、且つエンジン等の動力源が搭載される。
図2は、本発明の第一実施例に係るハイブリッド式ショベルの駆動系の構成を示すブロック図である。図2において、機械的動力系は二重線、高圧油圧ラインは実線、パイロットラインは破線、電気駆動・制御系は点線でそれぞれ示されている。
ハイブリッド式ショベルの駆動系は、主に、エンジン11、電動発電機12、変速機13、メインポンプ14、レギュレータ14A、パイロットポンプ15、コントロールバルブ17、インバータ18、蓄電系120、旋回用電動機構、操作装置26、パイロット圧センサ29、吐出圧センサ29A、ブームシリンダ圧センサ29B、コントローラ30で構成される。
エンジン11は、ショベルの駆動源であり、例えば、負荷が増減した場合にも所定の回転数を維持するように動作するエンジンであって、エンジン11の出力軸が変速機13を介してメインポンプ14及びパイロットポンプ15の入力軸に接続される。
電動発電機12は、エンジン11により駆動されて回転し発電を行う発電運転と、蓄電系120に蓄電された電力によって回転しエンジン出力をアシストするアシスト運転とを選択的に実行する装置である。
変速機13は、二つの入力軸と一つの出力軸とを備えた変速機構であり、入力軸の一方がエンジン11の出力軸に接続され、入力軸の他方が電動発電機12の回転軸に接続され、出力軸がメインポンプ14の回転軸に接続される。
メインポンプ14は、高圧油圧ラインを介して圧油をコントロールバルブ17に供給するための装置であり、例えば、斜板式可変容量型油圧ポンプである。
レギュレータ14Aは、メインポンプ14の吐出量を制御するための装置であり、例えば、メインポンプ14の吐出圧、コントローラ30からの制御信号等に応じてメインポンプ14の斜板傾転角を調節することによって、メインポンプ14の吐出量を制御する。
パイロットポンプ15は、パイロットラインを介して各種油圧制御機器に圧油を供給するための装置であり、例えば、固定容量型油圧ポンプである。
コントロールバルブ17は、ショベルにおける油圧システムを制御する油圧制御装置である。コントロールバルブ17は、例えば、ブームシリンダ7、アームシリンダ8、バケットシリンダ9、走行用油圧モータ1B(左用)、及び走行用油圧モータ1A(右用)のうちの一又は複数のものに対しメインポンプ14から受け入れた圧油を選択的に供給する。なお、以下では、ブームシリンダ7、アームシリンダ8、バケットシリンダ9、走行用油圧モータ1B(左用)、及び走行用油圧モータ1A(右用)を集合的に「油圧アクチュエータ」と称するものとする。
インバータ18は、交流電力と直流電力とを相互に変換する装置であり、電動発電機12が発電する交流電力を直流電力に変換して蓄電系120に蓄電し(充電動作)、蓄電系120に蓄電された直流電力を交流電力に変換して電動発電機12に供給する(放電動作)。また、インバータ18は、コントローラ30が出力する制御信号に応じて充放電動作の停止、切り替え、又は開始等を制御し、充放電動作に関する情報をコントローラ30に対して出力する。
蓄電系120は、直流電力を蓄電するためのシステムであり、例えば、蓄電部としてのキャパシタ、昇降圧コンバータ、及びDCバス(何れも図示せず。)を含む。DCバスは、キャパシタと電動発電機12との間における電力の授受を制御する。キャパシタは、キャパシタ電圧値を検出するためのキャパシタ電圧検出部(図示せず。)と、キャパシタ電流値を検出するためのキャパシタ電流検出部(図示せず。)を備える。キャパシタ電圧検出部及びキャパシタ電流検出部はそれぞれ、キャパシタ電圧値及びキャパシタ電流値をコントローラ30に対して出力する。なお、蓄電部としては、キャパシタだけでなく、リチウムイオン電池等の充放電可能な二次電池、リチウムイオンキャパシタ、又は、電力の授受が可能なその他の形態の電源を用いてもよい。
旋回用電動機構は、主に、インバータ20、旋回用電動発電機21、レゾルバ22、メカニカルブレーキ23、及び旋回変速機24で構成される。
インバータ20は、交流電力と直流電力とを相互に変換する装置であり、旋回用電動発電機21が発電する交流電力を直流電力に変換して蓄電系120に蓄電し(充電動作)、蓄電系120に蓄電された直流電力を交流電力に変換して旋回用電動発電機21に供給する(放電動作)。また、インバータ20は、コントローラ30が出力する制御信号に応じて充放電動作の停止、切り替え、又は開始等を制御し、充放電動作に関する情報をコントローラ30に対して出力する。
旋回用電動発電機21は、蓄電系120に蓄電された電力によって回転し旋回機構2を旋回させる力行運転と、旋回する旋回機構2の運動エネルギを電気エネルギに変換する回生運転とを選択的に実行する装置である。
レゾルバ22は、旋回機構2の旋回速度を検出するための装置であり、検出した値をコントローラ30に対して出力する。
メカニカルブレーキ23は、旋回機構2を制動するための装置であり、コントローラ30が出力する制御信号に応じて旋回機構2を機械的に旋回不能にする。
旋回変速機24は、入力軸と出力軸とを備えた変速機構であり、入力軸が旋回用電動発電機21の回転軸に接続され、出力軸が旋回機構2の回転軸に接続される。
操作装置26は、操作者が油圧アクチュエータの操作のために用いる装置であり、パイロットラインを介して、パイロットポンプ15から受け入れた圧油を油圧アクチュエータのそれぞれに対応する流量制御弁のパイロットポートに供給する。なお、パイロットポートのそれぞれに供給される圧油の圧力(パイロット圧)は、油圧アクチュエータのそれぞれに対応する操作装置26のレバー又はペダル(図示せず。)の操作方向及び操作量に応じた圧力とされる。
パイロット圧センサ29は、操作装置26を用いた操作者の操作内容を検出するための操作状態検出部であり、例えば、油圧アクチュエータのそれぞれに対応する操作装置26のレバー又はペダルの操作方向及び操作量を圧力の形で検出し、検出した値をコントローラ30に対して出力する。なお、操作装置26の操作内容は、圧力センサ以外の他のセンサを用いて検出されてもよい。
吐出圧センサ29Aは、アタッチメントに加わる負荷を検出する負荷圧センサの一例であり、例えば、メインポンプ14の吐出圧を検出するセンサであって、検出した値をコントローラ30に対して出力する。
ブームシリンダ圧センサ29Bは、アタッチメントに加わる負荷を検出する負荷圧センサの別の一例であり、例えば、ブームシリンダ7のボトム側チャンバにおける圧力を検出するためのセンサであって、検出した値をコントローラ30に対して出力する。
ブーム角度センサS1は、アタッチメントの姿勢を検出する姿勢検出センサの一例であり、例えば、ブーム4の傾き角度であるブーム角度α(図1参照。)を検出するためのセンサであって、検出した値をコントローラ30に対して出力する。
コントローラ30は、ショベルを制御するための制御装置であり、例えば、CPU(Central Processing Unit)、RAM(Random Access Memory)、ROM(Read Only Memory)等を備えたコンピュータで構成される。また、コントローラ30は、目標指令値設定部300、パラメータ決定部301、パラメータ適用部302、及びエンジン回転数制御部303のそれぞれに対応するプログラムをROMから読み出してRAMに展開しながら、それぞれに対応する処理をCPUに実行させる。
具体的には、コントローラ30は、ブーム角度センサS1、パイロット圧センサ29、吐出圧センサ29A、ブームシリンダ圧センサ29B等が出力する検出値を受信する。そして、コントローラ30は、それら検出値に基づいて目標指令値設定部300、パラメータ決定部301、パラメータ適用部302、及びエンジン回転数制御部303のそれぞれによる処理を実行する。その後、コントローラ30は、エンジン回転数制御部303の処理結果に応じた制御信号を適宜にエンジン11に対して出力する。
目標指令値設定部300は、エンジン回転数の目標指令値を設定するための機能要素であり、例えば、操作装置26の操作状態に応じてエンジン回転数の目標指令値を設定する。
具体的には、目標指令値設定部300は、パイロット圧センサ29の出力に基づいて操作装置26が何れも操作されない無操作状態となったことが検出された場合に、エンジン回転数の目標指令値を通常設定(例えば、1800rpm)から低回転数設定(例えば、1000rpm)に切り替える。燃料噴射量を減らすためである。
パラメータ決定部301は、エンジン回転数の推移パターンを決めるパラメータの値を決定するための機能要素であり、例えば、操作装置26の操作状態に応じてパラメータの値を決定する。
具体的には、パラメータ決定部301は、パイロット圧センサ29の出力に基づいて無操作状態が検出された場合に、操作状態の履歴に基づいて遅延パラメータの値を決定する。なお、コントローラ30は、操作装置26を用いた操作者の操作内容を操作状態の履歴として継続的にRAM等に記録している。
「遅延パラメータ」とは、現在のエンジン回転数が目標指令値の表すエンジン回転数に達するのを遅らせるように作用するパラメータであり、例えば、変更待ち時間、変更時間等を含む。
「変更待ち時間」とは、エンジン回転数の目標指令値が設定されてからエンジン回転数の増減を実際に開始させるまでの時間を意味する。
また、「変更時間」とは、エンジン回転数の増減が開始してから実際のエンジン回転数が目標指令値の示すエンジン回転数に達するまでの時間を意味する。
なお、無操作状態は、負荷圧センサ(例えば、吐出圧センサ29A、ブームシリンダ圧センサ29B、他の図示しないシリンダ圧センサ等である。)、姿勢センサ(例えば、ブーム角度センサS1、他の図示しない角度センサ等である。)等の出力に基づいて検出されてもよい。
パラメータ適用部302は、エンジン回転数の推移パターンが所定の推移パターンとなるように、目標指令値設定部300が設定した目標指令値に対してパラメータ決定部301が決定したパラメータの値を適用して瞬間指令値を出力する機能要素であり、例えば、変更待ち時間適用部302a及び変更時間適用部302bを含む。
「瞬間指令値」とは、所定の制御周期毎にエンジン回転数制御部303が受信する制御信号の値を意味する。
変更待ち時間適用部302aは、目標指令値に対してパラメータ決定部301が決定した遅延パラメータの一つである変更待ち時間の値を適用して瞬間指令値を導き出すための機能要素である。
変更時間適用部302bは、目標指令値にパラメータ決定部301が決定した遅延パラメータの一つである変更時間の値を適用して瞬間指令値を導き出すための機能要素である。
なお、パラメータ適用部302は、変更待ち時間適用部302a及び変更時間適用部302bのうちの何れか一方を含む構成であってもよい。
エンジン回転数制御部303は、パラメータ適用部302が出力する瞬間指令値に応じてエンジン回転数を制御する機能要素であり、例えば、瞬間指令値に応じた制御信号をエンジン11に対して出力し、燃料噴射量を増減させることによってエンジン回転数を制御する。
ここで、図3〜図5を参照しながら、コントローラ30における各機能要素間の信号のやり取りについて説明する。なお、図3〜図5は、コントローラ30の機能ブロック図であり、図3は、パラメータ適用部302が変更待ち時間適用部302a及び変更時間適用部302bの双方を備える場合を示し、図4は、パラメータ適用部302が変更待ち時間適用部302aのみを備える場合を示し、図5は、パラメータ適用部302が変更時間適用部302bのみを備える場合を示す。
目標指令値設定部300は、操作状態検出部としてのパイロット圧センサ29が出力するパイロット圧を受け、パイロット圧の大きさに基づいて無操作状態を検出すると、目標指令値を通常設定から低回転数設定に切り替え、切り替えた目標指令値をパラメータ適用部302に対して出力する。
同様に、パラメータ決定部301は、パイロット圧センサ29が出力するパイロット圧を受け、パイロット圧の大きさに基づいて無操作状態を検出すると、操作状態の履歴に基づいて遅延パラメータの値を決定し、決定した遅延パラメータの値をパラメータ適用部302に対して出力する。
パラメータ適用部302は、目標指令値設定部300からの目標指令値と、パラメータ決定部301からの遅延パラメータの値と、前回の瞬間指令値(例えば、一制御周期前の瞬間指令値である。)とに基づいて瞬間指令値を導き出し、導き出した瞬間指令値をエンジン回転数制御部303に対して出力する。
なお、図3のパラメータ適用部302は、目標指令値に対して変更待ち時間を適用した後に変更時間を適用しているが、変更時間を適用した後に変更待ち時間を適用してもよく、変更待ち時間及び変更時間を同時に適用してもよい。
このようにして、コントローラ30は、無操作状態を検出した場合に、瞬間指令値(現在のエンジン回転数)が目標指令値(低回転数設定が示すエンジン回転数)に至るのを遅らせながらも、最終的には瞬間指令値(現在のエンジン回転数)が目標指令値(低回転数設定が示すエンジン回転数)と等しくなるようにする。
なお、目標指令値設定部300は、目標指令値を通常設定から低回転数設定に切り替えた後で、操作装置26の何れが操作される操作状態となったことを検出した場合には、目標指令値を低回転数設定から通常設定に戻すようにする。この場合、目標指令値設定部300は、パラメータ適用部302を経由することなく、目標指令値(通常設定)をエンジン回転数制御部303に対して出力し、現在のエンジン回転数を通常設定が示すエンジン回転数までできるだけ迅速に復帰させるようにする。また、目標指令値設定部300は、低回転数設定が示すエンジン回転数までエンジン回転数を低下させている途中であっても、その低下を中断して現在のエンジン回転数を通常設定が示すエンジン回転数までできるだけ迅速に復帰させるようにする。
次に、図6〜図10を参照しながら、コントローラ30がエンジン回転数を制御する処理(以下、「エンジン回転数制御処理」とする。)の流れについて説明する。なお、図6は、エンジン回転数制御処理の流れを示すフローチャートであり、コントローラ30は、ハイブリッド式ショベルが稼働中の場合に、所定の制御周期で繰り返しこのエンジン回転数制御処理を実行する。
なお、コントローラ30は、パイロット圧センサ29が出力するパイロット圧を継続的に監視しながら、パイロット圧の推移に関する情報をRAMに記録している。
図7は、パイロット圧センサ29が出力するパイロット圧の推移の一例を示す図であり、図8は、コントローラ30がRAMに記録したパイロット圧の推移に関する情報の一例を示す図である。
具体的には、コントローラ30は、図7で示すように推移するパイロット圧に基づいて無操作状態(図7は3回の無操作状態が発生したことを示す。)を検出し、無操作状態のそれぞれの継続時間t1、t2、t3をRAMに用意された無操作時間テーブル(図8参照。)に記録している。
以上の条件の下で、コントローラ30は、パイロット圧センサ29の出力に基づいて、無操作状態であるか否かを判定する(ステップS1。)。
無操作状態でないと判定した場合(ステップS1のNO)、コントローラ30は、目標指令値を通常設定から低回転数設定へ切り替えることなく通常設定のまま維持し、現在の制御周期におけるエンジン回転数制御処理を終了させる。
一方、無操作状態であると判定した場合(ステップS1のYES)、目標指令値設定部300は、目標指令値を通常設定から低回転数設定に切り替え(ステップS2)、エンジン回転数を低下させようとする。無操作状態での燃料噴射量を減らすためである。
その後、パラメータ決定部301は、図8で示すような無操作時間テーブルを参照して、直近の所定回数(例えば、3回)の無操作状態の継続時間の平均値を平均無操作時間TAとして導き出す(ステップS3)。なお、図8は、直近の3回の無操作状態の継続時間に基づく平均無操作時間TAの算出式を一例として示す。
その後、パラメータ決定部301は、導き出した平均無操作時間TAに基づいて遅延パラメータの値を決定し(ステップS4)、決定した遅延パラメータの値をパラメータ適用部302に対して出力する。
その後、パラメータ適用部302は、目標指令値設定部300からの目標指令値と、パラメータ決定部301からの遅延パラメータの値と、前回の瞬間指令値(例えば、一演算周期前の瞬間指令値である。)とに基づいて、所定の演算周期で繰り返し瞬間指令値を決定し、決定した瞬間指令値をエンジン回転数制御部303に対して出力する。
エンジン回転数制御部303は、パラメータ適用部302から所定の演算周期で繰り返し送信されてくる瞬間指令値に応じた制御信号をエンジン11に対して出力して燃料噴射量を増減させることによって、瞬間指令値が示すエンジン回転数が達成されるようにエンジン回転数を制御する(ステップS5)。
ここで、図9及び図10を参照しながら、パラメータ適用部302による瞬間指令値の決定方法について説明する。なお、図9は、遅延パラメータと平均無操作時間TAとの間の関係を示す図であり、図9(A)が変更待ち時間TDと平均無操作時間TAとの間の関係を示し、図9(B)が変更時間TMと平均無操作時間TAとの間の関係を示す。また、図10は、変更待ち時間TD及び変更時間TMの双方が適用される場合にエンジン回転数制御部303が受信する瞬間指令値の推移を示す図である。
図9(A)で示すように、変更待ち時間TDは、平均無操作時間TAが増加するにつれて減少する傾向を有する。同様に、図9(B)で示すように、変更時間TMは、平均無操作時間TAが増加するにつれて減少する傾向を有する。
目標指令値及び瞬間指令値(現在のエンジン回転数)がともに通常設定N1となっている場合に、時刻t1において無操作状態が検出されると、目標指令値設定部300は、目標指令値を低回転数設定N2に切り替える。
パラメータ適用部302(変更待ち時間適用部302a)は、目標指令値に対して変更待ち時間TDを適用することによって、瞬間指令値の減少を制限する。具体的には、パラメータ適用部302(変更待ち時間適用部302a)は、目標指令値が通常設定N1から低回転数設定N2へ切り替えられた後であっても変更待ち時間TDが経過するまでは、これまでの目標指令値(通常設定N1)を瞬間指令値として出力し続ける。そして、パラメータ適用部302(変更待ち時間適用部302a)は、変更待ち時間TDが経過した時点で、瞬間指令値が目標指令値(低回転数設定N2)に向けて低下するのを許容する。
また、パラメータ適用部302(変更時間適用部302b)は、目標指令値に対して変更時間TMを適用することによって、瞬間指令値が急激に減少しないように瞬間指令値の減少率を制限する。なお、図10は、瞬間指令値が一定の減少率で減少することを示すが、減少率は、漸増するものであってもよく、漸減するものであってもよい。
次に、図11及び図12を参照しながら、上述のエンジン回転数制御処理による効果について説明する。なお、図11及び図12は、パイロット圧、エンジン回転数、及び燃料噴射量の時間的推移を示す図である。
また、図11は、本願発明の第一実施例と比較するために、無操作状態であってもエンジン回転数を低下させない場合(以下、比較例1としての「ケース1」とする。)と、無操作状態となったときに即座にエンジン回転数を低下させる場合(以下、比較例2としての「ケース2」とする。)とを示す。なお、図11では、破線で示す推移がケース1の推移に対応し、実線で示す推移がケース2の推移に対応する。
また、図11の斜線ハッチングは、ケース1の燃料噴射量に対するケース2の燃料噴射量の(操作状態から無操作状態への移行の際のエンジン回転数の低下に起因する)減少分を表し、図11の横縞ハッチングは、ケース1の燃料噴射量に対するケース2の燃料噴射量の(無操作状態から操作状態への移行の際のエンジン出力の急激な増加に起因する)増加分を表す。
図11の破線で示すように、ケース1では、パイロット圧が無操作状態であることを示すときであってもエンジン回転数が通常設定N1のままで推移するため、操作装置26が操作され無操作状態から操作状態に移行したときであっても、燃料噴射量はスパイクSPを形成することなく緩やかに増加する。
一方、図11の実線で示すように、ケース2では、パイロット圧が無操作状態であることを示すときにエンジン回転数が低回転数設定N2へ切り替えられるため、操作装置26が操作され無操作状態から操作状態に移行したときに、燃料噴射量は、急激に上昇してスパイクSPを形成する。エンジン11に対する負荷の増大に対する燃料噴射量の増大とは別に、エンジン回転数を通常設定N1に復帰させるための燃料噴射量の増大が必要とされるためである。
その結果、無操作時間が長い場合(図中のt3、t4参照。)には、ケース1の燃料噴射量に対するケース2の燃料噴射量の減少分(斜線ハッチング参照。)が、ケース1の燃料噴射量に対するケース2の燃料噴射量の増加分(横縞ハッチング参照。)を上回り、ケース2がケース1に比べて有利となる。
一方、無操作時間が短い場合(図中のt1、t2参照。)には、ケース1の燃料噴射量に対するケース2の燃料噴射量の増加分(横縞ハッチング参照。)が、ケース1の燃料噴射量に対するケース2の燃料噴射量の減少分(斜線ハッチング参照。)を上回り、ケース2がケース1に比べて不利となる。
なお、ケース1の燃料噴射量に対するケース2の燃料噴射量の増加分(横縞ハッチング参照。)が、ケース1の燃料噴射量に対するケース2の燃料噴射量の減少分(斜線ハッチング参照。)と等しい場合(燃料噴射量の点で両者に差が無い場合)には、ケース1がケース2に比べて有利となる。ケース2では、エンジン回転数を低回転数設定N2から通常設定N1に復帰させるとき(無操作状態から操作状態へ移行するとき)の操作感が、パワー不足のため、ケース1での操作感に比べて劣る場合があるためである。
また、図12は、比較例2としてのケース2と、無操作状態となったときのエンジン回転数の推移パターン(低下抑制パターン)を操作状態の履歴に応じて変化させる場合(上述のエンジン回転数制御処理を適用する場合であり、以下、本願発明の第一実施例としての「ケース3」とする。)とを示す。なお、図12では、破線で示す推移がケース2の推移に対応し、実線で示す推移がケース3の推移に対応する。
また、図12の縦縞ハッチングは、ケース2の燃料噴射量に対するケース3の燃料噴射量の増加分を表し、図12の格子状ハッチングは、ケース2の燃料噴射量に対するケース3の燃料噴射量の減少分を表す。
図12の破線で示すように、ケース2では、無操作状態の継続時間が長い場合(図中のt3、t4参照。)に加え、無操作状態の継続時間が短い場合(図中のt1、t2参照。)であってもエンジン回転数が低回転数設定N2へ切り替えられる。そのため、操作装置26が操作され無操作状態から操作状態に移行したときに、燃料噴射量は急激に上昇してスパイクSPを形成する。
一方、図12の実線で示すように、ケース3では、無操作状態の継続時間が長い場合(図中のt3、t4参照。)にはエンジン回転数が低回転数設定N2へ切り替えられるが、無操作状態の継続時間が短い場合(図中のt1、t2参照。)にはエンジン回転数は低回転数設定N2へ切り替えられることなく通常設定N1で維持される。
その結果、無操作時間が短い場合(図中のt1、t2参照。)には、ケース2の燃料噴射量に対するケース3の燃料噴射量の減少分(格子状ハッチング参照。)が、ケース2の燃料噴射量に対するケース3の燃料噴射量の増加分(縦縞ハッチング参照。)を上回り、ケース3がケース2に比べて有利となる。なお、ケース2の燃料噴射量に対するケース3の燃料噴射量の減少分(格子状ハッチング参照。)は、無操作状態から操作状態への移行の際のエンジン出力の急激な増加を回避したことに起因する。また、ケース2の燃料噴射量に対するケース3の燃料噴射量の増加分(縦縞ハッチング参照。)は、操作状態から無操作状態への移行の際のエンジン回転数の低下の省略に起因する。また、この場合にはエンジン回転数を低下させることもないため、無操作状態から操作状態へ移行する際の操作感がパワー不足のために悪化することもない。なお、無操作時間が長い場合(図中のt3、t4参照。)には、燃料噴射量の点で、ケース2とケース3との間に差が生じることはない。
以上により、第一実施例に係るハイブリッド式ショベルは、無操作状態の継続時間が短いと推定される場合にはエンジン11の回転数の低下を抑えることにより、無操作状態での燃料噴射量を減らすためのエンジン回転数低減機能がかえって燃料噴射量を増加させてしまうのを防止することができる。
また、第一実施例に係るハイブリッド式ショベルは、無操作状態の継続時間が短いと推定される場合にはエンジン11の回転数の低下を抑えることにより、無操作状態から操作状態へ移行する際の操作感がパワー不足のために悪化してしまうのを防止することができる。
また、第一実施例に係るハイブリッド式ショベルは、無操作状態の継続時間が長いと推定される場合にはエンジン11の回転数をより早期に低下させるようにし、無操作状態での燃料噴射量をさらに減らすことができる。
また、第一実施例に係るハイブリッド式ショベルは、過去の平均無操作時間に基づいて現在の無操作状態の継続時間を推定するため、作業内容の変化にも対応可能な信頼性の高い推定を行うことができる。
次に、図13〜図18を参照しながら、本発明の第二実施例に係る油圧ショベルについて説明する。
第二実施例に係る油圧ショベルは、目標指令値を通常設定から低回転数設定に切り替える際に、操作状態検出部の代わりに負荷状態検出部を用いる点において第一実施例に係るハイブリッド式ショベルと異なるが、その他の点において共通する。
図13は、第二実施例におけるコントローラ30の機能ブロック図であり、パラメータ適用部302が変更待ち時間適用部302a及び変更時間適用部302bの双方を備える場合を一例として示す。なお、パラメータ適用部302は、第一実施例の場合と同様、変更待ち時間適用部302aのみを備えるようにしてもよく、変更時間適用部302bのみを備えるようにしてもよい。
第二実施例において、目標指令値設定部300は、負荷状態検出部としての吐出圧センサ29Aが出力するメインポンプ14の吐出圧を受け、吐出圧の大きさに基づいて無負荷状態を検出すると、目標指令値を通常設定から低回転数設定に切り替え、切り替えた目標指令値をパラメータ適用部302に対して出力する。
同様に、パラメータ決定部301は、吐出圧センサ29Aが出力するメインポンプ14の吐出圧を受け、吐出圧の大きさに基づいて無負荷状態を検出すると、負荷状態の履歴に基づいて遅延パラメータの値を決定し、決定した遅延パラメータの値をパラメータ適用部302に対して出力する。
「無負荷状態」とは、エンジン11に対する負荷が小さい状態を意味し、例えば、吐出圧センサ29Aが出力するメインポンプ14の吐出圧が所定値未満となる状態を含む。また、無負荷状態は、吐出圧センサ29Aが出力する吐出圧が所定値未満であれば、操作装置26が操作状態の場合を含んでもよい。
なお、無負荷状態は、負荷圧状態検出部としての他の負荷圧センサ(例えば、ブームシリンダ圧センサ29B、他の図示しないシリンダ圧センサ等である。)等の出力に基づいて検出されてもよい。
パラメータ適用部302は、目標指令値設定部300からの目標指令値と、パラメータ決定部301からの遅延パラメータの値と、前回の瞬間指令値(例えば、一制御周期前の瞬間指令値である。)とに基づいて瞬間指令値を導き出し、導き出した瞬間指令値をエンジン回転数制御部303に対して出力する。
なお、図13のパラメータ適用部302は、目標指令値に対して変更待ち時間を適用した後に変更時間を適用しているが、変更時間を適用した後に変更待ち時間を適用してもよく、変更待ち時間及び変更時間を同時に適用してもよい。
このようにして、コントローラ30は、無負荷状態を検出した場合に、瞬間指令値(現在のエンジン回転数)が目標指令値(低回転数設定が示すエンジン回転数)に至るのを遅らせながらも、最終的には瞬間指令値(現在のエンジン回転数)が目標指令値(低回転数設定が示すエンジン回転数)と等しくなるようにする。
なお、目標指令値設定部300は、目標指令値を通常設定から低回転数設定に切り替えた後で、負荷状態となったことを検出した場合には、目標指令値を低回転数設定から通常設定に戻すようにする。この場合、目標指令値設定部300は、パラメータ適用部302を経由することなく、目標指令値(通常設定)をエンジン回転数制御部303に対して出力し、現在のエンジン回転数を通常設定が示すエンジン回転数までできるだけ迅速に復帰させるようにする。また、目標指令値設定部300は、低回転数設定が示すエンジン回転数までエンジン回転数を低下させている途中であっても、その低下を中断して現在のエンジン回転数を通常設定が示すエンジン回転数までできるだけ迅速に復帰させるようにする。
図14は、吐出圧センサ29Aが出力するメインポンプ14の吐出圧の推移の一例を示す図であり、図15は、コントローラ30がRAMに記録したメインポンプ14の吐出圧の推移に関する情報の一例を示す図である。
具体的には、コントローラ30は、図14で示すように推移する吐出圧に基づいて無負荷状態(図14は3回の無負荷状態が発生したことを示す。)を検出し、無負荷状態のそれぞれの継続時間t1、t2、t3をRAMに用意された無負荷時間テーブル(図15参照。)に記録している。
以上の条件の下で、コントローラ30は、吐出圧センサ29Aの出力に基づいて、無負荷状態であるか否かを判定する。
無負荷状態でないと判定した場合、コントローラ30は、目標指令値を通常設定から低回転数設定へ切り替えることなく通常設定のまま維持し、現在の制御周期におけるエンジン回転数制御処理を終了させる。
一方、無負荷状態であると判定した場合、目標指令値設定部300は、目標指令値を通常設定から低回転数設定に切り替え、エンジン回転数を低下させようとする。無負荷状態での燃料噴射量を減らすためである。
その後、パラメータ決定部301は、図15で示すような無負荷時間テーブルを参照して、直近の所定回数(例えば、3回)の無負荷状態の継続時間の平均値を平均無負荷時間TBとして導き出す。なお、図15は、直近の3回の無負荷状態の継続時間に基づく平均無負荷時間TBの算出式を一例として示す。
その後、パラメータ決定部301は、導き出した平均無負荷時間TBに基づいて遅延パラメータの値を決定し(ステップS4)、決定した遅延パラメータの値をパラメータ適用部302に対して出力する。
その後、パラメータ適用部302は、目標指令値設定部300からの目標指令値と、パラメータ決定部301からの遅延パラメータの値と、前回の瞬間指令値(例えば、一演算周期前の瞬間指令値である。)とに基づいて、所定の演算周期で繰り返し瞬間指令値を決定し、決定した瞬間指令値をエンジン回転数制御部303に対して出力する。
エンジン回転数制御部303は、パラメータ適用部302から所定の演算周期で繰り返し送信されてくる瞬間指令値に応じた制御信号をエンジン11に対して出力して燃料噴射量を増減させることによって、瞬間指令値が示すエンジン回転数が達成されるようにエンジン回転数を制御する。
ここで、図16及び図17を参照しながら、パラメータ適用部302による瞬間指令値の決定方法について説明する。なお、図16は、遅延パラメータと平均無負荷時間TBとの間の関係を示す図であり、図16(A)が変更待ち時間TDと平均無負荷時間TBとの間の関係を示し、図16(B)が変更時間TMと平均無負荷時間TBとの間の関係を示す。また、図17は、変更待ち時間TD及び変更時間TMの双方が適用される場合にエンジン回転数制御部303が受信する瞬間指令値の推移を示す図である。
図16(A)で示すように、変更待ち時間TDは、平均無負荷時間TBが増加するにつれて減少する傾向を有する。同様に、図16(B)で示すように、変更時間TMは、平均無負荷時間TBが増加するにつれて減少する傾向を有する。
目標指令値及び瞬間指令値(現在のエンジン回転数)がともに通常設定N1となっている場合に、時刻t1において無負荷状態が検出されると、目標指令値設定部300は、目標指令値を低回転数設定N2に切り替える。
パラメータ適用部302(変更待ち時間適用部302a)は、目標指令値に対して変更待ち時間TDを適用することによって、瞬間指令値の減少を制限する。具体的には、パラメータ適用部302(変更待ち時間適用部302a)は、目標指令値が通常設定N1から低回転数設定N2へ切り替えられた後であっても変更待ち時間TDが経過するまでは、これまでの目標指令値(通常設定N1)を瞬間指令値として出力し続ける。そして、パラメータ適用部302(変更待ち時間適用部302a)は、変更待ち時間TDが経過した時点で、瞬間指令値が目標指令値(低回転数設定N2)に向けて低下するのを許容する。
また、パラメータ適用部302(変更時間適用部302b)は、目標指令値に対して変更時間TMを適用することによって、瞬間指令値が急激に減少しないように瞬間指令値の減少率を制限する。なお、図17は、瞬間指令値が一定の減少率で減少することを示すが、減少率は、漸増するものであってもよく、漸減するものであってもよい。
次に、図18を参照しながら、第二実施例におけるエンジン回転数制御処理による効果について説明する。なお、図18は、メインポンプ吐出圧、エンジン回転数、及び燃料噴射量の時間的推移を示す図である。
図18は、本願発明の第二実施例と比較するために、無負荷状態となったときに即座にエンジン回転数を低下させる場合(以下、比較例3としての「ケース4」とする。)と、無負荷状態となったときのエンジン回転数の推移パターン(低下抑制パターン)を負荷状態の履歴に応じて変化させる場合(上述のエンジン回転数制御処理を適用する場合であり、以下、本願発明の第二実施例としての「ケース5」とする。)とを示す。なお、図18では、破線で示す推移がケース4の推移に対応し、実線で示す推移がケース5の推移に対応する。
また、図18の縦縞ハッチングは、ケース4の燃料噴射量に対するケース5の燃料噴射量の増加分を表し、図18の格子状ハッチングは、ケース4の燃料噴射量に対するケース5の燃料噴射量の減少分を表す。
図18の破線で示すように、ケース4では、無負荷状態の継続時間が長い場合(図中のt3、t4参照。)に加え、無負荷状態の継続時間が短い場合(図中のt1、t2参照。)であってもエンジン回転数が低回転数設定N2へ切り替えられる。そのため、無負荷状態から負荷状態に移行したときに、燃料噴射量は急激に上昇してスパイクSPを形成する。
一方、図18の実線で示すように、ケース5では、無負荷状態の継続時間が長い場合(図中のt3、t4参照。)にはエンジン回転数が低回転数設定N2へ切り替えられるが、無負荷状態の継続時間が短い場合(図中のt1、t2参照。)にはエンジン回転数は低回転数設定N2へ切り替えられることなく通常設定N1で維持される。
その結果、無負荷時間が短い場合(図中のt1、t2参照。)には、ケース4の燃料噴射量に対するケース5の燃料噴射量の減少分(格子状ハッチング参照。)が、ケース4の燃料噴射量に対するケース5の燃料噴射量の増加分(縦縞ハッチング参照。)を上回り、ケース5がケース4に比べて有利となる。なお、ケース4の燃料噴射量に対するケース5の燃料噴射量の減少分(格子状ハッチング参照。)は、無負荷状態から負荷状態への移行の際のエンジン出力の急激な増加を回避したことに起因する。また、ケース4の燃料噴射量に対するケース5の燃料噴射量の増加分(縦縞ハッチング参照。)は、負荷状態から無負荷状態への移行の際のエンジン回転数の低下の省略に起因する。また、この場合にはエンジン回転数を低下させることもないため、無負荷状態から負荷状態へ移行する際の操作感がパワー不足のために悪化することもない。なお、無負荷時間が長い場合(図中のt3、t4参照。)には、燃料噴射量の点で、ケース4とケース5との間に差が生じることはない。
以上により、第二実施例に係るハイブリッド式ショベルは、無負荷状態の継続時間が短いと推定される場合にはエンジン11の回転数の低下を抑えることにより、無負荷状態での燃料噴射量を減らすためのエンジン回転数低減機能がかえって燃料噴射量を増加させてしまうのを防止することができる。
また、第二実施例に係るハイブリッド式ショベルは、無負荷状態の継続時間が短いと推定される場合にはエンジン11の回転数の低下を抑えることにより、無負荷状態から負荷状態へ移行する際の操作感がパワー不足のために悪化してしまうのを防止することができる。
また、第二実施例に係るハイブリッド式ショベルは、無負荷状態の継続時間が長いと推定される場合にはエンジン11の回転数をより早期に低下させるようにし、無負荷状態での燃料噴射量をさらに減らすことができる。
また、第二実施例に係るハイブリッド式ショベルは、過去の平均無負荷時間に基づいて現在の無負荷状態の継続時間を推定するため、作業内容の変化にも対応可能な信頼性の高い推定を行うことができる。