以下、本開示の実施形態について、図面を参照して詳細に説明する。なお、以下に説明する実施形態は一例であり、本開示はこの実施形態により限定されるものではない。以下で説明する実施形態の構成要素は適宜組み合わせることができる。また、一部の構成要素を用いない場合もある。
なお、以下の説明において、同種の要素を区別して説明する場合には、数字からなる共通番号とアルファベットからなる追番号との組み合わせで構成される参照符号を用いて、例えば「シリンダ4a」、「シリンダ4b」と表現する。また、同種の要素を区別しないで包括的に説明する場合には、参照符号のうちの共通番号のみを用いて、例えば、「シリンダ4」と表現する。
(油圧ポンプモータ1)
図1を参照して、本実施形態に係る油圧ポンプモータ1について説明する。以下の説明では、流体作動機械の一例として、油圧ポンプモータを例に説明を行うが、流体作動機械は油圧ポンプモータには限定されない。
油圧ポンプモータ1は、押し除け容量をゼロから最大容量Q1まで変化させることのできる可変容量型のポンプモータである。図1は、油圧ポンプモータ1を模式的に示した図である。図1に示すように、油圧ポンプモータ1は、不図示の駆動源に接続されたクランクシャフト2のクランクカム3(「偏心カム」の一例)の周囲に、放射状に、かつ、容積変動サイクル上で等間隔(30°ごと)に配置された12個のシリンダ4を有する。なお、容積変動サイクルを、以下、単に「サイクル」という場合がある。また、図1では1バンクに12個のシリンダ4が設けられているが、バンク数および1バンクあたりのシリンダ数については適宜変更可能である。
作動油室5は、シリンダ4の内側表面と、クランクカム3によって駆動され、作動油室5の容積を周期的に変化させるようにシリンダ4内を往復運動するピストン6と、によって画定される。
作動油室5は、高圧バルブ7を介して高圧油路8と接続されるとともに、低圧バルブ9を介して低圧油路10と接続されている。高圧バルブ7は、シリンダ4から外側に向かって開く逆止弁である。高圧バルブ7は、不図示のバネによって閉弁方向へ付勢されている。低圧バルブ9は、シリンダ4に向かって内側に開く逆止弁である。低圧バルブ9は、不図示のバネによって開弁方向へ付勢されている。
各シリンダ4に対応して、コントローラ12に接続され、高圧バルブ7および低圧バルブ9の開閉を制御するソレノイドバルブ13が設けられている。コントローラ12の制御の下、ソレノイドバルブ13に通電されることで、低圧バルブ9が閉弁方向へ付勢され、高圧バルブ7が開弁方向へ付勢される。
高圧バルブ7、低圧バルブ9およびソレノイドバルブ13によって、クランクシャフト2(すなわち、クランクカム3)の回転エネルギーと作動油室5内の油圧エネルギーとの間でのエネルギー変換を行うアクティブ状態と、上記エネルギー変換を行わない非アクティブ状態と、を切り替える切替ユニット14が構成される。すなわち、コントローラ12は、切替ユニット14を制御している。なお、切替ユニット14は、高圧バルブ7および低圧バルブ9を単一のソレノイドバルブ13で動作させるものには限られない。
コントローラ12は、ハードウェアとして、例えば、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)等を有する。以下において説明するコントローラ12の各機能は、CPUがROMから読み出したコンピュータプログラムをRAM上で実行することにより実現される。
コントローラ12は、容積変動サイクルの1サイクルの期間内における動作モードを、作動油室5の状態をアクティブ状態とし続けるフルモード、作動油室5の状態を非アクティブ状態とし続けるアイドリングモード、および、作動油室5の状態を部分的にアクティブ状態とする部分モード、のいずれかとすることができる。すなわち、コントローラ12は、作動油室5を、フルモード、アイドリングモードおよび部分モードのいずれかで作動させることができる。
作動油室5をアイドリングモードで作動させる場合、コントローラ12は、作動油室5の吸入および排油の全行程で、高圧バルブ7を閉弁させ、かつ、低圧バルブ9を開弁させる。これにより、作動油は低圧油路10から作動油室5内へ吸入され、低圧油路10へ排出される。
作動油室5をフルモードで作動させる場合、コントローラ12は、排油行程から吸入行程へ差し掛かる直前のタイミングで、閉弁状態の高圧バルブ7を開弁させ、かつ、開弁状態の低圧バルブ9を閉弁させる。これにより、吸入行程において、作動油は高圧油路8から作動油室5内へ吸入される。また、コントローラ12は、吸入行程から排油行程へ差し掛かる直前のタイミングで、開弁状態の高圧バルブ7を閉弁させ、かつ、閉弁状態の低圧バルブ9を開弁させる。これにより、排油行程において、作動油は作動油室5内から低圧油路10へ排出される。
作動油室5を部分モードで作動させる場合、コントローラ12は、排油行程における所定タイミングで、閉弁状態の高圧バルブ7を開弁させ、かつ、開弁状態の低圧バルブ9を閉弁させる。これにより、排油行程において、上記所定タイミングまでは、作動油は低圧油路10から作動油室5内へ吸入され、上記所定タイミング後は、作動油は高圧油路8から作動油室5内へ吸入される。また、コントローラ12は、吸入行程から排油行程へ差し掛かる直前のタイミングで、開弁状態の高圧バルブ7を閉弁させ、かつ、閉弁状態の低圧バルブ9を開弁させる。これにより、排油行程において、作動油は作動油室5内から低圧油路10へ排出される。
以上のような構成を有する油圧ポンプモータ1において、所望のトルクを得るために、以下に説明する制御が行われる。
(シリンダ4のグループ分け)
ここで、図2を参照して、シリンダ4のグループ分けについて説明する。図2は、油圧ポンプモータ1におけるシリンダ4のグループ分けについて説明するための図であり、各シリンダ4の位置がクランクシャフト2の回転軸に関する回転座標系で模式的に示されている。
クランクシャフト2の回転方向は、図2おいて時計回りとする。また、図2における上向き(クランクシャフト2の回転軸Oからシリンダ4gへ向かう向き)を、絶対角0°とする。また、回転座標系は、図2における時計回りの方向をプラス方向とし、反時計回りの方向をマイナス方向とする。図2における下向き(クランクシャフト2の回転軸Oからシリンダ4aへ向かう向き)を、絶対角+180°とする。
シリンダ4は、第1グループ、第2グループ、第3グループおよび第4グループにグループ分けされる。各グループに属する3つのシリンダ4は、それぞれ、サイクル上等間隔に配置されている。
本実施形態では、第1グループには、絶対角+180°のシリンダ4aと、絶対角+60°のシリンダ4eと、絶対角−60°のシリンダ4jと、の3シリンダが含まれる。第2グループには、絶対角+150°のシリンダ4bと、絶対角+30°のシリンダ4fと、絶対角−90°のシリンダ4kと、の3シリンダが含まれる。
第3グループには、絶対角+120°のシリンダ4cと、絶対角0°のシリンダ4gと、絶対角−120°のシリンダ4mと、の3シリンダが含まれる。第4グループには、絶対角+90°のシリンダ4dと、絶対角−30°のシリンダ4hと、絶対角−150°のシリンダ4nと、の3シリンダが含まれる。
なお、グループ分けは上述の例には限定されず、バンク数およびシリンダ数に応じて適宜変更可能であることはいうまでもない。
(コントローラ12の動作)
次に、図3を参照して、コントローラ12の動作について説明する。図3は、実施形態に係る油圧ポンプモータ1におけるコントローラ12の動作の一例を示すフローチャートである。図3に示す処理は、任意の所定のタイミングで開始される。
フローチャートの説明に先立って、フローチャートで用いられている各記号について簡単に説明する。ステップS1等で用いられている「Qtrg」および「TargetQ」は、油圧ポンプモータ1の最大容量に対する目標容量の割合である。「Qtrg」および「TargetQ」は、0以上100以下の値(単位:%)を取り得る。
ステップS2等で用いられている「Qgroup」は、油圧ポンプモータ1の最大容量に対する、1グループあたりの最大容量の割合である。本実施形態では、グループの数が4であるため、「Qgroup」は、25(単位:%)である。なお、例えば、グループの数が2である場合、「Qgroup」は50となる。また、ステップS2等で用いられている「i」は、判断対象となるグループ番号である。
ステップS5等で用いられている「GroupNumber」は、グループの数である。本実施形態では、「GroupNumber」は4である。ステップS10等で用いられている「Qpart」は、所定グループを部分モードで動作させる場合の、油圧ポンプモータ1の最大容量に対する当該所定グループの目標容量の割合である。「Qpart」は、0より大きく、かつ、上述の「Qgroup」よりも小さな値(単位:%)を取り得る。本実施形態では、「Qpart」は、0より大きく、25よりも小さな値を取り得る。
なお、ステップS1の処理演算は、(360°/GroupNumber)の角度毎に行われ、(360°/GroupNumber)の角度毎に、対応するグループに属するシリンダ4の動作モード(アイドリングモード、部分モード、および、フルモード)が判断され、当該グループの目標容量が決定される。
ステップS1で、コントローラ12は、外部装置等から受け取った油圧ポンプモータ1におけるTargetQを、Qtrgとする。
続くステップS2で、コントローラ12は、以下の式(1)が満たされるか否かを判定する。
Qtrg−(i×Qgroup)≧Qgroup (1)
なお、制御開始時、i=0である。そのため、最初の制御周期では、ステップS2において、以下の式(2)が満たされるか否かを判定することになる。
Qtrg≧Qgroup (2)
ステップS2で、式(1)が満たされると判断された場合(ステップS2:YES)、処理はステップS3へ進む。そして、ステップS3で、コントローラ12は、第(i+1)グループに属するシリンダ4をフルモードで動作させる(Group(i+1)=Full)。ステップS3の処理の後、処理はステップS4へ進む。
一方、ステップS2で、式(1)が満たされないと判断された場合(ステップS2:NO)、処理はステップS8へ進む。そして、ステップS8で、コントローラ12は、以下の式(3)が満たされるか否かを判定する。
Qtrg−(i×Qgroup)≦0 (3)
ステップS8で、式(3)が満たされると判断された場合(ステップS8:YES)、処理はステップS9へ進む。そして、ステップS9で、コントローラ12は、第(i+1)グループに属するシリンダ4をアイドリングモードで動作させる(Group(i+1)=idle)。ステップS9の処理の後、処理はステップS4へ進む。
一方、ステップS8で、式(3)が満たされないと判断された場合(ステップS8:NO)、処理はステップS10へ進む。そして、ステップS10で、コントローラ12は、第(i+1)グループに属するシリンダ4を部分モードで動作させる。当該部分モードにおける目標容量は、以下の式(4)に基づいて決定される。
Qpart=Qtrg−(i×Qgroup) (4)
ステップS10の処理の後、処理はステップS4へ進む。ステップS4で、コントローラ12は、判断対象となるグループ番号をインクリメントする(i=i+1)。
ステップS4に続くステップS5で、コントローラ12は、以下の式(5)が満たされるか否か(すなわち、判断対象となるグループ番号がグループの数に達したか否か)を判定する。
i≧GroupNumber (5)
ステップS5で、式(5)が満たされると判断された場合(ステップS5:YES)、処理はステップS6へ進む。一方、ステップS5で、式(5)が満たされないと判断された場合(ステップS5:NO)、処理はステップS7へ進む。
ステップS6で、コントローラ12は、判断対象となるグループ番号をリセットする(i=0)。ステップS6の処理の後、処理はステップS7へ進む。
ステップS7で、コントローラ12は、本アルゴリズムを継続するか否かを判定する。ステップS7で、本アルゴリズムを継続すると判断された場合(ステップS7:YES)、処理はステップS1へ進む。一方、ステップS7で、本アルゴリズムを継続しないと判断された場合(ステップS7:NO)、処理は終了する。
(TargetQ=72%の場合)
次に、図4を参照して、TargetQ=72%の場合の油圧ポンプモータ1の動作について説明する。図4は、クランク角および各グループの目標容量の推移を示すタイムチャートである。
時刻t0までは、TargetQ=0%(油圧ポンプモータ1の目標容量=0)である。そのため、各グループ(第1グループ〜第4グループ)の目標容量も、0とされる。
時刻t0で、TargetQ=72%となると、クランク角が180°となるタイミング(時刻t1)で、第1グループを対象として、グループに属するシリンダ4の動作モード(アイドリングモード、部分モード、および、フルモード)が判断され、当該グループの目標容量が決定される。
第1グループについては、ステップS2→ステップS3→ステップS4と処理が進む。そのため、第1グループに属するシリンダ4の動作モードは「フルモード」となる。また、第1グループの目標容量は、25%(ひとつのグループでの最大容量)である。
続いて、クランク角が−90°となるタイミング(時刻t2)で、第2グループを対象として、グループに属するシリンダ4の動作モード(アイドリングモード、部分モード、および、フルモード)が判断され、当該グループの目標容量が決定される。
第2グループについては、第1グループと同様、ステップS2→ステップS3→ステップS4と処理が進む。そのため、第2グループに属するシリンダ4の動作モードは「フルモード」となる。また、第2グループの目標容量は、25%(ひとつのグループでの最大容量)である。
続いて、クランク角が0°となるタイミング(時刻t3)で、第3グループを対象として、グループに属するシリンダ4の動作モード(アイドリングモード、部分モード、および、フルモード)が判断され、当該グループの目標容量が決定される。
第3グループについては、ステップS2→ステップS8→ステップS10と処理が進む。そのため、第3グループに属するシリンダ4の動作モードは「部分モード」となる。また、第3グループの目標容量は、油圧ポンプモータ1の目標流量(72%)から、第1グループの目標流量(25%)および第2グループの目標流量(25%)を差し引いた、22%に決定される。
続いて、クランク角が90°となるタイミング(時刻t4)で、第4グループを対象として、グループに属するシリンダ4の動作モード(アイドリングモード、部分モード、および、フルモード)が判断され、当該グループの目標容量が決定される。
第4グループについては、ステップS2→ステップS8→ステップS9と処理が進む。そのため、第4グループに属するシリンダ4の動作モードは「アイドリングモード」となる。また、第4グループの目標容量は、0%である。
以上のようにして、クランク角が所定角度となるタイミングごとに、グループごとに動作モードが判断され、当該グループの目標容量が決定されることで、油圧ポンプモータ1全体としての容量の調整が行われる。このように、所定間隔(本実施形態では、120°間隔)に発生するトルクを均等にすることで、流量の変動幅を抑えることができ、もって、トルク変動を抑えることができる。
(TargetQ=90%の場合)
次に、図5を参照して、TargetQ=90%の場合の油圧ポンプモータ1の動作について説明する。図5は、クランク角および各グループの目標容量の推移を示すタイムチャートである。
時刻t10までは、TargetQ=0%(油圧ポンプモータ1の目標容量=0)である。そのため、各グループ(第1グループ〜第4グループ)の目標容量も、0とされる。
時刻t10で、TargetQ=90%となると、クランク角が180°となるタイミング(時刻t11)で、第1グループを対象として、グループに属するシリンダ4の動作モード(アイドリングモード、部分モード、および、フルモード)が判断され、当該グループの目標容量が決定される。
第1グループについては、ステップS2→ステップS3→ステップS4と処理が進む。そのため、第1グループに属するシリンダ4の動作モードは「フルモード」となる。また、第1グループの目標容量は、25%(ひとつのグループでの最大容量)である。
続いて、クランク角が−90°となるタイミング(時刻t12)で、第2グループを対象として、グループに属するシリンダ4の動作モード(アイドリングモード、部分モード、および、フルモード)が判断され、当該グループの目標容量が決定される。
第2グループについては、第1グループと同様、ステップS2→ステップS3→ステップS4と処理が進む。そのため、第2グループに属するシリンダ4の動作モードは「フルモード」となる。また、第2グループの目標容量は、25%(ひとつのグループでの最大容量)である。
続いて、クランク角が0°となるタイミング(時刻t13)で、第3グループを対象として、グループに属するシリンダ4の動作モード(アイドリングモード、部分モード、および、フルモード)が判断され、当該グループの目標容量が決定される。
第3グループについては、第1グループおよび第2グループと同様、ステップS2→ステップS3→ステップS4と処理が進む。そのため、第3グループに属するシリンダ4の動作モードは「フルモード」となる。また、第3グループの目標容量は、25%(ひとつのグループでの最大容量)である。
続いて、クランク角が90°となるタイミング(時刻t14)で、第4グループを対象として、グループに属するシリンダ4の動作モード(アイドリングモード、部分モード、および、フルモード)が判断され、当該グループの目標容量が決定される。
第4グループについては、ステップS2→ステップS8→ステップS10と処理が進む。そのため、第4グループに属するシリンダ4の動作モードは「部分モード」となる。また、第3グループの目標容量は、油圧ポンプモータ1の目標流量(90%)から、第1グループの目標流量(25%)、第2グループの目標流量(25%)および第3グループの目標流量(25%)を差し引いた、15%に決定される。
以上のようにして、クランク角が所定角度となるタイミングごとに、グループごとに動作モードが判断され、当該グループの目標容量が決定されることで、油圧ポンプモータ1全体としての容量の調整が行われる。このように、所定間隔(本実施形態では、120°間隔)に発生するトルクを均等にすることで、流量の変動幅を抑えることができ、もって、トルク変動を抑えることができる。
(TargetQ=29%の場合)
次に、図6を参照して、TargetQ=29%の場合の油圧ポンプモータ1の動作について説明する。図6は、クランク角および各グループの目標容量の推移を示すタイムチャートである。
時刻t20までは、TargetQ=0%(油圧ポンプモータ1の目標容量=0)である。そのため、各グループ(第1グループ〜第4グループ)の目標容量も、0とされる。
時刻t20で、TargetQ=29%となると、クランク角が180°となるタイミング(時刻t21)で、第1グループを対象として、グループに属するシリンダ4の動作モード(アイドリングモード、部分モード、および、フルモード)が判断され、当該グループの目標容量が決定される。
第1グループについては、ステップS2→ステップS3→ステップS4と処理が進む。そのため、第1グループに属するシリンダ4の動作モードは「フルモード」となる。また、第1グループの目標容量は、25%(ひとつのグループでの最大容量)である。
続いて、クランク角が−90°となるタイミング(時刻t22)で、第2グループを対象として、グループに属するシリンダ4の動作モード(アイドリングモード、部分モード、および、フルモード)が判断され、当該グループの目標容量が決定される。
第2グループについては、ステップS2→ステップS8→ステップS10と処理が進む。そのため、第2グループに属するシリンダ4の動作モードは「部分モード」となる。また、第2グループの目標容量は、油圧ポンプモータ1の目標流量(29%)から、第1グループの目標流量(25%)を差し引いた、4%に決定される。
続いて、クランク角が0°となるタイミング(時刻t23)で、第3グループを対象として、グループに属するシリンダ4の動作モード(アイドリングモード、部分モード、および、フルモード)が判断され、当該グループの目標容量が決定される。
第3グループについては、ステップS2→ステップS8→ステップS9と処理が進む。そのため、第3グループに属するシリンダ4の動作モードは「アイドリングモード」となる。また、第3グループの目標容量は、0%である。
続いて、クランク角が90°となるタイミング(時刻t24)で、第4グループを対象として、グループに属するシリンダ4の動作モード(アイドリングモード、部分モード、および、フルモード)が判断され、当該グループの目標容量が決定される。
第4グループについては、第3グループと同様、ステップS2→ステップS8→ステップS9と処理が進む。そのため、第4グループに属するシリンダ4の動作モードは「アイドリングモード」となる。また、第4グループの目標容量は、0%である。
以上のようにして、クランク角が所定角度となるタイミングごとに、グループごとに動作モードが判断され、当該グループの目標容量が決定されることで、油圧ポンプモータ1全体としての容量の調整が行われる。このように、所定間隔(本実施形態では、120°間隔)に発生するトルクを均等にすることで、流量の変動幅を抑えることができ、もって、トルク変動を抑えることができる。
(第2実施形態)
ところで、部分モードで作動させる際に目標容量が所定範囲にある場合、容積変動の大きな状態で高圧バルブ7および低圧バルブ9の開閉が行われるため、油圧ポンプモータ1の構造上、音や損失が大きくなり、さらに、当該目標容量を安定して達成することができない可能性がある。これに対して、以下に説明する第2実施形態では、部分モードで動作させるグループにおける目標容量が所定範囲にある場合、複数サイクルに亘って当該目標容量を達成することで、これらの種々の問題に対処している。
(コントローラ12の動作)
図7を参照して、第2実施形態におけるコントローラ12の動作について説明する。図7は、第2実施形態に係る油圧ポンプモータ1におけるコントローラ12の動作の一例を示すフローチャートである。図7に示す処理は、任意の所定のタイミングで開始される。
フローチャートの説明に先立って、フローチャートで用いられている各記号について簡単に説明する。ステップS11等で用いられている「LeftOver」は、油圧ポンプモータ1の目標容量のうち、前回のサイクルにおいて達成されなかった分の容量を示している。
ステップS20等で用いられている「Qpartmax」は、達成することのできない目標容量の最大値である。ステップS20等で用いられている「Qpartmin」は、達成することのできない目標容量の最小値である。なお、「達成することのできない目標容量」とは、油圧ポンプモータ1の構造上、音や損失が大きくなり、さらに、当該目標容量を安定して達成することができないような目標容量を意味する。以下、(2×Qpartmax≦Qgroup)が成立するものとして説明を行う。
なお、ステップS11の処理演算は、(360°/GroupNumber)の角度毎に行われ、(360°/GroupNumber)の角度毎に、対応するグループに属するシリンダ4の動作モード(アイドリングモード、部分モード、および、フルモード)が判断され、当該グループの目標容量が決定される。
ステップS11で、コントローラ12は、外部装置等から受け取った油圧ポンプモータ1におけるTargetQに、LeftOverを足し合わせて、Qtrgとする。なお、制御開始時、LeftOver=0である。
続くステップS12で、コントローラ12は、上述の式(1)が満たされるか否かを判定する。式(1)が満たされると判断された場合(ステップS12:YES)、処理はステップS13へ進む。
そして、ステップS13で、コントローラ12は、第(i+1)グループに属するシリンダ4をフルモードで動作させる(Group(i+1)=Full)。ステップS13の処理の後、処理はステップS14へ進む。
一方、ステップS12で、式(1)が満たされないと判断された場合(ステップS12:NO)、処理はステップS18へ進む。そして、ステップS18で、コントローラ12は、上述の式(3)が満たされるか否かを判定する。
ステップS18で、式(3)が満たされると判断された場合(ステップS18:YES)、処理はステップS19へ進む。そして、ステップS19で、コントローラ12は、第(i+1)グループに属するシリンダ4をアイドリングモードで動作させる(Group(i+1)=idle)。ステップS19の処理の後、処理はステップS14へ進む。
一方、ステップS18で、式(3)が満たされないと判断された場合(ステップS18:NO)、処理はステップS20へ進む。そして、ステップS20で、コントローラ12は、以下の式(6)が満たされるか否かを判定する。
Qpartmax≧Qtrg−(i×Qgroup)≧Qpartmin (6)
ステップS20で、式(6)が満たされると判断された場合(ステップS20:YES)、処理はステップS21へ進む。そして、ステップS21で、コントローラ12は、第(i+1)グループに属するシリンダ4を部分モードで動作させる。当該部分モードにおける目標容量は、上述の式(4)に基づいて決定される。また、コントローラ12は、LeftOverをリセットする(LeftOver=0)。ステップS21の処理の後、処理はステップS14へ進む。
一方、ステップS20で、式(6)が満たされないと判断された場合(ステップS20:NO)、処理はステップS22へ進む。そして、ステップS22で、コントローラ12は、第(i+1)グループに属するシリンダ4をアイドリングモードで動作させる(Group(i+1)=idle)。また、コントローラ12は、以下の式(7)に基づいてLeftOverを決定する。
LeftOver=Qtrg−(i×Qgroup) (7)
ステップS22の処理の後、処理はステップS14へ進む。ステップS14で、コントローラ12は、判断対象となるグループ番号をインクリメントする(i=i+1)。
ステップS14に続くステップS15で、コントローラ12は、上述の式(5)が満たされるか否か(すなわち、判断対象となるグループ番号がグループの数に達したか否か)を判定する。
ステップS15で、式(5)が満たされると判断された場合(ステップS15:YES)、処理はステップS16へ進む。一方、ステップS15で、式(5)が満たされないと判断された場合(ステップS15:NO)、処理はステップS17へ進む。
ステップS16で、コントローラ12は、判断対象となるグループ番号をリセットする(i=0)。ステップS16の処理の後、処理はステップS17へ進む。
ステップS17で、コントローラ12は、本アルゴリズムを継続するか否かを判定する。ステップS17で、本アルゴリズムを継続すると判断された場合(ステップS17:YES)、処理はステップS11へ進む。一方、ステップS17で、本アルゴリズムを継続しないと判断された場合(ステップS17:NO)、処理は終了する。
(TargetQ=85%の場合)
次に、図8を参照して、TargetQ=85%の場合の油圧ポンプモータ1の動作について説明する。図8は、クランク角および各グループの目標容量の推移を示すタイムチャートである。なお、一例として、Qpartmax=13%であり、Qpartmin=6%であるとする。
時刻t30までは、TargetQ=0%(油圧ポンプモータ1の目標容量=0)である。そのため、各グループ(第1グループ〜第4グループ)の目標容量も、0とされる。
時刻t30で、TargetQ=85%となると、クランク角が180°となるタイミング(時刻t31)で、第1グループを対象として、グループに属するシリンダ4の動作モード(アイドリングモード、部分モード、および、フルモード)が判断され、当該グループの目標容量が決定される。
第1グループについては、ステップS12→ステップS13→ステップS14と処理が進む。そのため、第1グループに属するシリンダ4の動作モードは「フルモード」となる。また、第1グループの目標容量は、25%(ひとつのグループでの最大容量)である。
続いて、クランク角が−90°となるタイミング(時刻t32)で、第2グループを対象として、グループに属するシリンダ4の動作モード(アイドリングモード、部分モード、および、フルモード)が判断され、当該グループの目標容量が決定される。
第2グループについては、第1グループと同様、ステップS12→ステップS13→ステップS14と処理が進む。そのため、第2グループに属するシリンダ4の動作モードは「フルモード」となる。また、第2グループの目標容量は、25%(ひとつのグループでの最大容量)である。
続いて、クランク角が0°となるタイミング(時刻t33)で、第3グループを対象として、グループに属するシリンダ4の動作モード(アイドリングモード、部分モード、および、フルモード)が判断され、当該グループの目標容量が決定される。
第3グループについては、第1グループおよび第2グループと同様、ステップS12→ステップS13→ステップS14と処理が進む。そのため、第3グループに属するシリンダ4の動作モードは「フルモード」となる。また、第3グループの目標容量は、25%(ひとつのグループでの最大容量)である。
続いて、クランク角が90°となるタイミング(時刻t34)で、第4グループを対象として、グループに属するシリンダ4の動作モード(アイドリングモード、部分モード、および、フルモード)が判断され、当該グループの目標容量が決定される。
第4グループについては、ステップS12→ステップS18→ステップS20と処理が進む。さらに、ステップS20において、上述の式(6)が満たされると判断され、処理はステップS22へ進む。
そのため、第4グループに属するシリンダ4の動作モードは「アイドリングモード」となる。また、第4グループの目標容量は、0%である(実線)。さらに、LeftOverが、上述の式(7)に基づいて10%とされる。なお、図8には、第2実施形態の制御が行われない場合に、第4グループの目標容量がQpartmin以上Qpartmax以下の領域に含まれることが、破線で表されている。
時刻t34以降、次サイクルでクランク角が再び180°、−90°、0°および90°となるタイミングで第1グループ、第2グループ、第3グループおよび第4グループについての判断がそれぞれ行われる。この際、Qtrgは、LeftOver=10%であることにより、上述の式(1)に基づいて95%とされる。
クランク角が90°となるタイミング(時刻t35)で、第4グループを対象として、グループに属するシリンダ4の動作モード(アイドリングモード、部分モード、および、フルモード)が判断され、当該グループの目標容量が決定される。
第4グループについては、ステップS12→ステップS18→ステップS20と処理が進む。さらに、ステップS20において、上述の式(6)が満たされないと判断され、処理はステップS21へ進む。
そのため、第4グループに属するシリンダ4の動作モードは「部分モード」となる。また、第4グループの目標容量が20%に決定され、LeftOverがリセットされる。
時刻t35以降、次サイクルでクランク角が再び180°、−90°、0°および90°となるタイミングで第1グループ、第2グループ、第3グループおよび第4グループについての判断がそれぞれ行われる。この際、Qtrgは、LeftOver=0%であることにより、上述の式(1)に基づいて85%とされる。
クランク角が90°となるタイミング(時刻t36)で、第4グループを対象として、グループに属するシリンダ4の動作モード(アイドリングモード、部分モード、および、フルモード)が判断され、当該グループの目標容量が決定される。
第4グループについては、ステップS12→ステップS18→ステップS20→ステップS22と処理が進み、第4グループに属するシリンダ4の動作モードは「アイドリングモード」となる。また、第4グループの目標容量は、0%である。さらに、LeftOverが、上述の式(7)に基づいて10%とされる。
以上のようにして、第2実施形態によれば、クランク角が所定角度となるタイミングごとに、グループごとに動作モードが判断され、当該グループの目標容量が決定されることで、油圧ポンプモータ1全体としての容量の調整が行われる。このように、所定間隔(本実施形態では、120°間隔)に発生するトルクを均等にすることで、流量の変動幅を抑えることができ、もって、トルク変動を抑えることができる。
さらに、第2実施形態では、部分モードにおける目標容量がQpartmin以上Qpartmax以下の場合に、目標容量を次サイクルに持ち越すことで、複数サイクルに亘って目標流量を達成するようにしている。そのため、音や損失を抑え、さらに、当該目標容量を安定して達成することができる。
以上説明したように、本実施形態に係る油圧ポンプモータ1は、クランクカム3と、クランクカム3が一回転する期間内でクランクカム3の回転に連動して互いに異なる時間位相にて往復動するように構成された複数のピストン6と、ピストン6とともに複数の作動油室5を形成する複数のシリンダ4と、それぞれのシリンダ4に対応して設けられ、クランクカム3の回転エネルギーと作動油室5内の圧力エネルギーとの間でのエネルギー変換を行うアクティブ状態と上記エネルギー変換を行わない非アクティブ状態との間で作動油室5の状態を切り替える切替ユニット14と、切替ユニット14を制御するコントローラ12と、を備え、複数のシリンダ4は、クランクカム3の回転サイクル上で等間隔に配置された複数のシリンダ4ごとにグループ化されており、コントローラ12は、グループごとに、クランクカム3が一回転する期間内における動作モードを、作動油室5の状態をアクティブ状態とし続けるフルモード、作動油室5の状態を非アクティブ状態とし続けるアイドリングモード、および、作動油室5の状態を部分的にアクティブ状態とする部分モードのいずれにするか、を判断する。
これにより、流量の変動幅を抑えることができ、もって、トルク変動を抑えることができる。
以上、本開示の実施形態について説明したが、本開示は、上述の実施形態に限定されるものではなく、本開示の趣旨を逸脱しない範囲で、適宜変形して実施することが可能である。
上述の実施形態では、クランク角が所定角度となるタイミングごとに(すなわち、グループの数に基づいてクランクカムの回転サイクル上で等間隔に設定された判断タイミングごとに)、グループの動作モードが判断されるものを例に説明を行ったが、これに限定されない。
例えば、全てのグループについて同時に動作モードの判断が行われてもよい。具体的には、例えば、コントローラ12は、第1〜第4グループについての動作モードの判断を、クランク角が0°となるタイミングで同時に行ってもよい。
また、例えば、全てのグループについて同時に動作モードの判断を行うことによる処理負荷を軽減するため、各グループの判断タイミングをずらしてもよい。具体的には、例えば、コントローラ12は、第1〜第4グループについての判断を、クランク角が0°、5°、10°および15°となるタイミングでそれぞれ行ってもよい。
すなわち、コントローラ12は、グループごとの動作モードの判断を、クランクカム3の回転サイクル上で所定時期に設定されたタイミングで行ってもよい。