まず、本発明の実施例に係る建設機械の全体構成及びその駆動系の構成について説明する。図1は本発明の実施例に係る建設機械としてのショベルの構成例を示す側面図である。なお、本発明は、ショベルに限らず、旋回用電動機を搭載するものであれば、他の建設機械にも適用することができる。
図1に示すショベルの下部走行体1には旋回機構2を介して上部旋回体3が搭載される。上部旋回体3にはブーム4が取り付けられる。ブーム4の先端にはアーム5が取り付けられ、アーム5の先端にはバケット6が取り付けられる。ブーム4、アーム5、及びバケット6は、ブームシリンダ7、アームシリンダ8、及びバケットシリンダ9によりそれぞれ油圧駆動される。また、上部旋回体3には、キャビン10が設けられ、且つエンジン等の動力源が搭載される。
図2は図1に示すショベルの駆動系の構成例を示すブロック図である。図2において、機械的動力系は二重線、高圧油圧ラインは太実線、パイロットラインは破線、電気駆動・制御系は細実線でそれぞれ示される。
エンジン11と電動発電機12は減速機13の2つの入力軸にそれぞれ接続される。減速機13の出力軸には油圧ポンプとしてのメインポンプ14及びパイロットポンプ15が接続される。メインポンプ14には高圧油圧ライン16を介してコントロールバルブ17が接続される。また、パイロットポンプ15にはパイロットライン25を介して操作装置26が接続される。
コントロールバルブ17はショベルにおける油圧系の制御を行う油圧制御装置である。本実施例では、コントロールバルブ17は高圧油圧ラインを介して右側走行用油圧モータ2A、左側走行用油圧モータ2B、ブームシリンダ7、アームシリンダ8、バケットシリンダ9等の各種アクチュエータに接続される。
蓄電系120は、蓄電装置19と、昇降圧コンバータ19aと、DCバス19bとを含む。蓄電装置19は例えばキャパシタであり、昇降圧コンバータ19a、DCバス19b、及びインバータ18を介して電動発電機12に接続される。また、蓄電装置19は、昇降圧コンバータ19a、DCバス19b、及びインバータ20を介して旋回用電動機21に接続される。昇降圧コンバータ19aは、蓄電装置19とDCバス19bとの間に配置され、電動発電機12及び旋回用電動機21の運転状態に応じて、DCバス19bの電圧レベルが一定の範囲内に収まるように昇圧動作と降圧動作を切り替える制御を行う。DCバス19bは、昇降圧コンバータ19aとインバータ18及びインバータ20のそれぞれとの間に配置され、蓄電装置19、電動発電機12、及び旋回用電動機21の間での電力の授受を可能にする。
インバータ18は、コントローラ30からのトルク電流指令値に応じてモータ駆動電流を電動発電機12に対して出力する。また、インバータ20は、コントローラ30からのトルク電流指令値に応じてモータ駆動電流を旋回用電動機21に対して出力する。
また、インバータ18及びインバータ20のそれぞれの内部には、インバータの回路を構成するトランジスタを組み込んだインテリジェントパワーモジュール(Intelligent Power Module(IPM))が搭載される。
旋回用電動機21の出力軸21Aには、レゾルバ22、メカニカルブレーキ23、及び旋回減速機24が接続される。
操作装置26は、各種アクチュエータを操作するための装置であり、操作量、操作方向等の操作内容に応じたパイロット圧を発生させる。また、操作装置26は、油圧ライン27を介してコントロールバルブ17に接続される。コントロールバルブ17は、操作装置26が発生させたパイロット圧に応じて各種アクチュエータに対応するスプール弁を動かし、メインポンプ14が吐出する作動油を各種アクチュエータに供給する。また、操作装置26は、油圧ライン28を介して圧力センサ29に接続される。圧力センサ29は、操作装置26が発生させたパイロット圧を電気信号に変換し、変換した電気信号をコントローラ30に対して出力する。
電流計M1は、インバータ20と旋回用電動機21との間を流れる電流を検出する装置であり、検出した値をコントローラ30に対して出力する。また、電流計M1は、電流フィードバック制御、電流監視・チェック等を実行可能な別の演算処理装置に対して検出した値を出力してもよい。なお、別の演算処理装置は、例えばインバータ20に一体化されてもよくインバータ20から独立した別体として構成されてもよい。
コントローラ30は、ショベルの駆動制御を行う制御装置である。本実施例では、コントローラ30は、CPU及び内部メモリを含む演算処理装置である。具体的には、演算処理装置は、内部メモリに格納された駆動制御用のプログラムをCPUに実行させて各種機能を実現する。
図3は、コントローラ30の機能ブロック図を含み、旋回用電動機21の駆動制御を行う際に用いられる機能要素を示す。本実施例では、コントローラ30は、主に、速度指令生成部31、速度制限部32、減算器33、PI制御部34、トルク制限部35、負荷率算出部36、加速トルク制限生成部37、及び速度制限生成部38を有する。
速度指令生成部31は、旋回操作レバーのレバー操作量を表す圧力センサ29からの電気信号に基づいて速度指令値を生成する。
速度制限部32は、速度制限値を用いて速度指令値を速度制限値以下に制限する。本実施例では、速度制限部32は、速度指令生成部31が生成した速度指令値が速度制限値以上であれば速度制限値を速度指令値として減算器33に対して出力する。また、速度制限部32は、速度指令生成部31が生成した速度指令値が速度制限値未満であればその速度指令値をそのまま減算器33に対して出力する。
減算器33は、速度指令値と旋回速度の現在値(実旋回速度)との偏差をPI制御部34に対して出力する。実旋回速度は、例えば旋回速度検出器としてのレゾルバ22の検出値から導き出される。具体的には、コントローラ30は、旋回用電動機21の回転位置の変化に基づいて実旋回速度を導き出す。
PI制御部34は、減算器33から入力される偏差に基づいてPI制御を実行する。本実施例では、PI制御部34は、実旋回速度が速度指令値に近づくようにトルク電流指令値を生成する。そして、PI制御部34は、生成したトルク電流指令値をトルク制限部35に対して出力する。
トルク制限部35は、トルク制限値(加速トルク制限値を含む。)を用いてトルク電流指令値をトルク制限値以下に制限する。本実施例では、トルク制限部35は、トルク電流指令値がトルク制限値以上であればトルク制限値をトルク電流指令値として採用する。また、トルク制限部35は、トルク電流指令値がトルク制限値未満であればそのトルク電流指令値をそのまま採用する。そして、トルク制限部35は、採用したトルク電流指令値をインバータ20に対して出力する。
トルク電流指令値を受けたインバータ20は、そのトルク電流指令値に応じてPWM信号を生成し、生成したPWM信号でトランジスタ等のスイッチング素子を制御する。また、インバータ20は、トルク電流指令値とトルク電流の現在値との偏差を極小化するようにトルク電流指令値をフィードバック制御してもよい。この場合、トルク電流の現在値は、例えば、電流計M1が検出する値である。
負荷率算出部36は、インバータ20及び旋回用電動機21を含む旋回駆動系の負荷率を算出する。また、負荷率算出部36は、旋回駆動系の温度が高いほど負荷率が高くなるように負荷率を算出する。例えば、負荷率算出部36は、インバータ20のIPMの温度が高いほど、或いは、旋回用電動機21の温度が高いほど負荷率が高くなるように負荷率を算出する。本実施例では、負荷率算出部36は、電流計M1の検出値に基づいて負荷率を算出する。インバータ20と旋回用電動機21との間を流れる電流が大きいほど旋回駆動系の温度が高くなると推定されるためである。具体的には、負荷率算出部36は、所定の制御周期毎に電流計M1が検出する電流値に対応する発熱量を直近の所定期間にわたって積算し、その所定期間における発熱量積算値を導き出す。また、負荷率算出部36は、その直近の所定期間における冷却回路の冷却能力に応じた値(冷却熱量積算値)をその発熱量積算値から差し引いて現時点における負荷率を導き出す。なお、冷却熱量積算値は予め記憶された値であってもよく、或いは、冷却回路を構成する冷却水ポンプの吐出量、冷却水の温度等を検出する各種センサの出力に基づいて動的に導き出されてもよい。この場合、電流計M1の検出値に対応する発熱量の瞬間値の大きさがその冷却回路による冷却熱量の瞬間値の大きさ未満である状態が継続すると負荷率は時間と共に減少する。このようにして、負荷率算出部36は、所定の制御周期毎に負荷率を導き出し、加速トルク制限生成部37及び速度制限生成部38のそれぞれに対してその負荷率を出力する。
また、負荷率算出部36は、電流計M1の検出値から定格電流値(冷却回路の冷却能力に相当する熱量を発生させる電流値)を差し引いた値の積分値として負荷率を導き出してもよい。
また、負荷率算出部36は、インバータ20及び旋回用電動機21の少なくとも一方の温度を図示しない温度センサで測定し、その測定値に基づいて負荷率を算出してもよく、その測定値をそのまま負荷率としてもよい。本来、旋回用電動機21を流れる電流の積算値、又は、その電流値に対応する発熱量の積算値は、旋回駆動系の温度(例えば、インバータ20及び旋回用電動機21の少なくとも一方の温度)を適切に測定できない場合にその温度を推定するためのものだからである。
また、負荷率算出部36は、電流計M1の検出値(モータ駆動電流)及び温度センサの測定値(インバータ20又は旋回用電動機21の温度)のそれぞれに基づいて複数の負荷率を算出し、それら複数の負荷率の統計値(例えば最大値、最小値、平均値)を最終的な負荷率として採用してもよい。
また、コントローラ30は、負荷率算出部36が算出した負荷率が所定の過負荷レベルを超えたと判断した場合、インバータ20に対してオフ指令を出力してインバータ20の出力を停止させ、且つ、メカニカルブレーキ23に対してブレーキ指令を出力してメカニカルブレーキ23による制動力を発生させる。その結果、旋回用電動機21は、旋回中であるか否かにかかわらず、インバータ20からの電流の供給が強制的に遮断され、且つ、メカニカルブレーキ23によって強制的に停止させられる。
加速トルク制限生成部37は、上部旋回体3の旋回速度を増大(加速)させようとする加速トルクを制限する加速トルク制限値を生成する。本実施例では、加速トルク制限生成部37は、負荷率算出部36が算出する負荷率に応じて加速トルク制限値を生成し、生成した加速トルク制限値をトルク制限部35に対して出力する。
また、加速トルク制限生成部37は、電流計M1の検出値(モータ駆動電流)及び温度センサの測定値(インバータ20又は旋回用電動機21の温度)に基づいて負荷率算出部36が算出する複数の負荷率のそれぞれに応じて複数の加速トルク制限値を生成し、それら複数の加速トルク制限値の統計値(例えば最大値、最小値、平均値)を最終的な加速トルク制限値として採用してもよい。
なお、加速トルク制限値は、上部旋回体3の旋回速度を増大(加速)させようとする加速トルクを制限するものであり、上部旋回体3の旋回速度を低減(減速)させようとする減速トルクを制限するものではなく、上部旋回体3を旋回させないようにする保持トルクを制限するものでもない。そのため、コントローラ30は、加速トルクが発生する場合に限り、トルク制限部35においてトルク電流指令値が所定の加速トルク制限標準値未満の加速トルク制限値で制限されるようにする。
具体的には、コントローラ30は、加速トルクが発生すると判定した場合に限り、加速トルク制限生成部37からトルク制限部35へ加速トルク制限値を出力させる。例えば、コントローラ30は、実旋回速度と速度指令値とに基づいて加速トルクが発生するか否かを判定する。ここで実旋回速度及び速度指令値が何れも右旋回時に正値となり左旋回時に負値となる場合を想定する。この場合、コントローラ30は、実旋回速度の正負符号と速度指令値の正負符号が同じで且つ実旋回速度が速度指令値よりもゼロに近いときに加速トルクが発生すると判定する。
なお、コントローラ30は、加速トルクが発生すると判定した場合に限り加速トルク制限生成部37に加速トルク制限値を出力させる代わりに、加速トルクが発生すると判定した場合に限りトルク制限部35に加速トルク制限値を受信させてもよい。
なお、コントローラ30は、例えば減速トルク又は保持トルクが発生する場合等、加速トルクが発生しないと判定した場合には、負荷率の変動とは無関係に設定されるトルク制限値でトルク電流指令値を制限してもよい。
ここで、図4を参照し、加速トルク制限生成部37が生成する加速トルク制限値について説明する。なお、図4は、加速トルク制限値と負荷率との関係を定める参照テーブルの一例を示すグラフである。
図4に示すように、加速トルク制限値は、負荷率算出部36が算出する負荷率の値が所定の制限開始レベルとして定められた値LVs(以下、「制限開始レベルLVs」とする。)に達するまでは所定値TL1で一定に推移する。なお、所定値TL1は旋回駆動系の損傷を防止するために旋回駆動系の仕様に応じて決まる上限値である。したがって、所定値TL1の大きさによっては、負荷率が制限開始レベルLVs未満であっても加速トルク制限値は必ずしも一定に推移する必要はない。そして、加速トルク制限値は、負荷率が制限開始レベルLVsを超えると負荷率に応じた一定の割合で減少し、負荷率が所定の過負荷レベルとして定められた値LVe(以下、「過負荷レベルLVe」とする。)に達すると所定値TL2に至る。なお、コントローラ30は、負荷率が過負荷レベルLVeに達した場合には旋回用電動機21を強制的に停止させる。
このように、加速トルク制限生成部37は、内部メモリ等に予め記憶した参照テーブルを用いて現在の負荷率に対応する加速トルク制限値を導き出す。なお、加速トルク制限値は必ずしも負荷率に応じた一定の割合で減少する必要はなく、段階的に減少してもよく、非線形的に減少してもよい。
また、加速トルクの制限は、インバータ20から旋回用電動機21に流れるモータ駆動電流を抑制する効果をもたらす。その結果、旋回駆動系の発熱量を抑制してその負荷率が過負荷レベルLVeに達するのを抑制し或いは防止できる。
この構成により、コントローラ30は、負荷率が過負荷レベルLVeに達した途端に加速トルクが急減するのを抑制し或いは防止することで、旋回に関する操作フィーリングの悪化を防止できる。また、コントローラ30は、加速トルクが発生すると判定した場合に限りトルク電流指令値が加速トルク制限値で制限されるようにするため、旋回用電動機21の減速トルクが制限されてしまうのを防止し、旋回の停止が遅れるのを防止できる。
速度制限生成部38は、上部旋回体3の旋回速度の許容最大値としての速度制限値を生成する。本実施例では、速度制限生成部38は、負荷率算出部36が算出する負荷率に応じて速度制限値を生成し、生成した速度制限値を速度制限部32に対して出力する。
また、速度制限生成部38は、電流計M1の検出値(モータ駆動電流)及び温度センサの測定値(インバータ20又は旋回用電動機21の温度)に基づいて負荷率算出部36が算出する複数の負荷率のそれぞれに応じて複数の速度制限値を生成し、それら複数の速度制限値の統計値(例えば最大値、最小値、平均値)を最終的な速度制限値として採用してもよい。
ここで、図5を参照し、速度制限生成部38が生成する速度制限値について説明する。なお、図5は、速度制限値と負荷率との関係を定める参照テーブルの一例を示すグラフである。
図5に示すように、速度制限値は、負荷率算出部36が算出する負荷率の値が所定の制限開始レベルLVsに達するまでは所定値SL1で一定に推移する。なお、所定値SL1は、所定値TL1と同様、旋回駆動系の損傷を防止するために旋回駆動系の仕様に応じて決まる上限値である。したがって、所定値SL1の大きさによっては、負荷率が制限開始レベルLVs未満であっても速度制限値は必ずしも一定に推移する必要はない。そして、速度制限値は、負荷率が制限開始レベルLVsを超えると負荷率に応じた一定の割合で減少し、負荷率が所定の過負荷レベルLVeに達すると所定値SL2に至る。
このように、速度制限生成部38は、内部メモリ等に予め記憶した参照テーブルを用いて現在の負荷率に対応する速度制限値を導き出す。なお、速度制限値は必ずしも負荷率に応じた一定の割合で減少する必要はなく、段階的に減少してもよく、非線形的に減少してもよい。
また、旋回速度の許容最大値の制限は、上部旋回体3の旋回を停止させるのに要する総減速トルク(減速開始時から停止時までの減速トルクの積分値)を抑える効果をもたらす。総減速トルクは、減速開始時の旋回速度が大きいほど大きいためである。その結果、上部旋回体3の旋回を停止させる際の旋回駆動系の発熱量を抑制してその負荷率が過負荷レベルLVeに達するのを抑制或いは防止できる。
以上の構成により、コントローラ30は、加速トルクの制限と旋回速度の制限とを併用することで負荷率が過負荷レベルLV2に達するのをより確実に抑制或いは防止できる。加速トルクを制限するだけでは上部旋回体3の旋回速度が所定値SL1に達するのを防止できず、所定値SL1で旋回する上部旋回体3を停止させる際に負荷率が過負荷レベルLV2に達してしまう状況が起こり得るためである。また、旋回速度を制限するだけでは上部旋回体3の旋回速度が急加速するのを防止できず、上部旋回体3が急加速する際に負荷率が過負荷レベルLV2に達してしまう状況が起こり得るためである。但し、本発明は、加速トルクのみを制限する構成、及び、旋回速度のみを制限する構成を排除することはない。
次に、図6を参照し、コントローラ30が旋回駆動系の負荷率に応じて旋回用電動機21の駆動を制限する処理(以下、「旋回制限処理」とする。)について説明する。なお、図6は、旋回制限処理の流れを示すフローチャートであり、コントローラ30は、所定の制御周期で繰り返しこの旋回制限処理を実行する。
最初に、コントローラ30の負荷率算出部36は、旋回駆動系の負荷率を算出する(ステップS1)。本実施例では、負荷率算出部36は、電流計M1の検出値に基づいて旋回駆動系の負荷率を算出する。
その後、コントローラ30は、負荷率算出部36が算出した負荷率が過負荷レベルLVe未満であるかを判定する(ステップS2)。
負荷率が過負荷レベルLVe未満であると判定した場合(ステップS2のYES)、コントローラ30は、負荷率が所定の制限開始レベルLVs以上であるかを判定する(ステップS3)。
負荷率が制限開始レベルLVs以上であると判定した場合(ステップS3のYES)、コントローラ30の速度制限生成部38は速度制限値を低減させる(ステップS4)。本実施例では、速度制限生成部38は、内部メモリに予め記憶された参照テーブル(図5参照。)を参照し、負荷率算出部36が算出した現在の負荷率に対応する速度制限値を導き出す。そして、速度制限生成部38は、速度制限標準値SL1よりも小さいその速度制限値を速度制限部32に対して出力する。その結果、旋回操作レバーのレバー操作量に応じて速度指令生成部31が生成する速度指令値はその速度制限値以下に制限される。
その後、コントローラ30は、加速トルクが発生するか否かを判定する(ステップS5)。本実施例では、コントローラ30は、実旋回速度の正負符号と速度指令値の正負符号が同じで且つ実旋回速度が速度指令値よりもゼロに近いときに加速トルクが発生すると判定する。
加速トルクが発生すると判定した場合(ステップS5のYES)、コントローラ30の加速トルク制限生成部37は加速トルク制限値を低減させる(ステップS6)。本実施例では、加速トルク制限生成部37は、内部メモリに予め記憶された参照テーブル(図4参照。)を参照し、負荷率算出部36が算出した現在の負荷率に対応する加速トルク制限値を導き出す。そして、加速トルク制限生成部37は、加速トルク制限標準値TL1よりも小さいその加速トルク制限値をトルク制限部35に対して出力する。その結果、PI制御部34が生成するトルク電流指令値はその加速トルク制限値以下に制限される。
また、コントローラ30は、加速トルク制限生成部37が加速トルク制限値を低減させた場合、その旨をショベルの操作者に通知する(ステップS7)。本実施例では、コントローラ30は、車載スピーカ、車載ディスプレイ等の図示しない出力装置に対して制御指令を出力する。そして、加速トルク制限値を低減させたことを表す音声メッセージ、テキストメッセージ、ブザー等を出力させ、加速トルク制限値を低減させたことを操作者に通知する。通知を受けた操作者は、負荷率が増大していることを早期に認識し、負荷率が過度に増大する前にショベルを適切な状態に移行させることができる。なお、コントローラ30は、速度制限生成部38が速度制限値を低減させた旨を操作者に通知してもよい。
一方、加速トルクが発生しないと判定した場合(ステップS5のNO)、コントローラ30はトルク制限値を所定のトルク制限標準値未満に低減させることなく旋回駆動系を動作させ、所望の減速トルク又は保持トルクが出力されるようにする。すなわち、コントローラ30は、負荷率が制限開始レベルLVs以上であると判定した場合であっても減速トルク及び保持トルクを所定のトルク制限標準値未満に制限することはない。なお、この場合のトルク制限標準値は、負荷率とは無関係に旋回減速中又は旋回保持中に採用される値を意味する。
また、負荷率が制限開始レベルLVs未満であると判定した場合(ステップS3のNO)、コントローラ30は、速度制限値を速度制限標準値SL1未満に低減させることなく、また、加速トルク制限値を加速トルク制限標準値TL1未満に低減させることもなく旋回駆動系を動作させ、所望の旋回トルクが出力されるようにする。
なお、負荷率が過負荷レベルLVe以上であると判定した場合には(ステップS2のNO)、コントローラ30は上部旋回体3の旋回を強制的に停止させる(ステップS8)。本実施例では、コントローラ30は、旋回用電動機21を停止させ、且つ、メカニカルブレーキ23による制動力を発生させる。
なお、上述の旋回制限処理では速度制限値が決定された後でトルク制限値が決定されるが、トルク制限値が決定された後で速度制限値が決定されてもよく、速度制限値及びトルク制限値が同時並行的に決定されてもよい。
次に、図7を参照し、ショベルが旋回押し付け作業を行う際の各種物理量の時間的推移について説明する。なお、図7はショベルが旋回押し付け作業を行う際の各種物理量の時間的推移を示すグラフである。具体的には、図7(A1)〜図7(D1)はコントローラ30が旋回制限処理を実行しない場合の各種物理量の時間的推移を示し、図7(A2)〜図7(D2)はコントローラ30が旋回制限処理を実行する場合の各種物理量の時間的推移を示す。また、図7(A1)及び図7(A2)は旋回操作レバーのレバー操作量の時間的推移を示し、図7(B1)及び図7(B2)は速度指令値/実旋回速度の時間的推移を示す。また、図7(C1)及び図7(C2)はトルク電流指令値の時間的推移を示し、図7(D1)及び図7(D2)は負荷率の時間的推移を示す。なお、図7(A1)及び図7(A2)のそれぞれに示すレバー操作量の時間的推移は旋回制限処理の実行の有無にかかわらず同じである。
最初に、図7(A1)〜図7(D1)を参照し、旋回押し付け作業中にコントローラ30が旋回制限処理を実行しない場合の各種物理量の時間的推移について説明する。
図7(A1)の実線で示すように旋回操作レバーが時刻t1において傾倒されると、速度指令値は、図7(B1)の実線で示すように時刻t1で増大し始め、時刻t2で速度制限標準値SL1に至る。一方で、実旋回速度は、図7(B1)の点線で示すように、時刻t1から時刻t2の間で僅かに増大するが、その後は略ゼロのまま推移する。旋回押し付け作業のため、旋回トルクを発生させたとしても上部旋回体3が旋回しないためである。したがって、速度指令値と実旋回速度の偏差Dは比較的大きな値を維持したまま推移する。
トルク電流指令値は、図7(C1)の実線で示すように、時刻t1で増大し始め、時刻t2で加速トルク制限標準値TL1に至る。また、時刻t2以降も速度指令値と実旋回速度の偏差Dが比較的大きな値で推移するため、トルク電流指令値は加速トルク制限標準値TL1のまま推移する。すなわち、インバータ20は、比較的大きなモータ駆動電流を旋回用電動機21に供給し続ける。
負荷率は、図7(D1)の実線で示すように、速度指令値及びトルク電流指令値の立ち上がりから僅かに遅れて立ち上がり、その後もモータ駆動電流の供給が継続されるために増大し続ける。そして、負荷率は時刻t3において過負荷レベルLVeに達する。
コントローラ30は、負荷率が過負荷レベルLVeに達すると、速度指令値及びトルク電流指令値をゼロにし、インバータ20による旋回用電動機21へのモータ駆動電流の供給を停止させる。
このように、旋回押し付け作業中に旋回制限処理を実行しない場合、コントローラ30は、負荷率が過負荷レベルLVeに達したときに、旋回駆動系の保護のため旋回用電動機21の駆動を強制的に停止させ、且つ、メカニカルブレーキ23により上部旋回体3の旋回を阻止する。そのため、操作者は旋回駆動系の温度が所定温度未満に低下するまでは上部旋回体3を旋回させることができなくなる。
次に、図7(A2)〜図7(D2)を参照し、旋回押し付け作業中にコントローラ30が旋回制限処理を実行する場合の各種物理量の時間的推移について説明する。なお、時刻t2までの各種物理量の時間的推移は、図7(A1)から図7(D1)に示す時間的推移と同じであるため説明を省略する。
旋回制限処理を実行する場合、コントローラ30は、図7(D2)の実線で示すように時刻t10において負荷率が制限開始レベルLVsに達すると、加速トルクが発生するか否かを判定する。この場合、コントローラ30は、図7(B2)に示すように速度指令値の正負符号と実旋回速度の正負符号が同じで且つ実旋回速度が速度指令値よりもゼロに近いために加速トルクが発生すると判定する。そして、コントローラ30は、図7(C2)の実線で示すように加速トルク制限値を加速トルク制限標準値TL1未満に低減させる。加速トルク制限値の低減は、旋回用電動機21に関するモータ駆動電流の低減をもたらす。そのため、インバータ20及び旋回用電動機21のそれぞれの温度の上昇を抑制する効果、すなわち、負荷率の増加を抑制する効果をもたらす。なお、負荷率はモータ駆動電流による発熱量が冷却回路による冷却熱量を上回る限り減少することはない。したがって、加速トルク制限値は、図7(C2)の実線で示すように時間に対する減少率を低下させながら徐々に減少する。一方で、負荷率は、図7(D2)の実線で示すように時間に対する増加率を低下させながら徐々に増加する。
この構成により、コントローラ30は、旋回操作レバーが同じレバー操作量で操作され続けたとしてもインバータ20に対して出力されるトルク電流指令値を加速トルク制限値に沿って緩やかに(連続的に)減少させることができる。そのため、旋回制限処理を実行しない場合に負荷率が過負荷レベルLVeに達したときのようにトルク電流指令値を急減させてしまうのを防止できる。その結果、加速トルクの急変に起因するショックを発生させて操作者に違和感を与えてしまうのを防止できる。
また、コントローラ30は、負荷率の増加に応じて加速トルク制限値を減少させることで負荷率が過負荷レベルLVeに達してしまうのを抑制或いは防止できる。そのため、旋回制限処理を実行しない場合に負荷率が過負荷レベルLVeに達したときのように旋回用電動機21が強制的に停止させられてショベルの連続運転が不可能になるといった状況が発生するのを抑制或いは防止できる。
同様に、コントローラ30は、図7(D2)の実線で示すように時刻t10において負荷率が制限開始レベルLVsに達すると、図7(B2)の実線で示すように速度制限値を速度制限標準値SL1未満に低減させる。また、速度制限値は負荷率が増加するにつれて減少する。具体的には、図7(B2)の実線で示すように時間に対する減少率を低下させながら徐々に減少する。
この構成により、コントローラ30は、上部旋回体3の許容最大旋回速度を制限することができ、上部旋回体3を停止させるのに必要な総減速トルクが過度に大きくなるのを抑制し或いは防止できる。そのため、加速トルクを制限したときのように減速トルクを制限しなくとも、旋回減速中に負荷率が過負荷レベルLVeに達するのを防止しながら、上部旋回体3の旋回を停止させることができる。また、減速トルクを制限しないため、上部旋回体3の旋回を停止させるまでの旋回角度が過度に大きくなるのを防止できる。なお、コントローラ30は、減速トルクを制限せずに上部旋回体3の旋回を停止させようとした結果、負荷率が過負荷レベルLVeに達した場合には、メカニカルブレーキ23を作動させて上部旋回体3の旋回を機械的に停止させる。
次に、図8を参照し、旋回用電動機21の旋回角速度ω、旋回エネルギE、及び旋回トルクτの関係について説明する。なお、図8は、上部旋回体3を旋回させ且つ停止させる際の旋回角速度ω、旋回エネルギE、及び旋回トルクτの時間的推移を示す図である。具体的には、図8(A)が旋回用電動機21の旋回角速度ωの時間的推移を示し、図8(B)が旋回エネルギEの時間的推移を示し、図8(C)が旋回トルクτの時間的推移を示す。また、図8の実線で示す推移は旋回制限処理が実行されない場合の各種物理量の推移を示す。また、図8の破線で示す推移は、旋回制限処理が実行される場合、すなわち、旋回制限処理によって速度制限値が速度制限標準値SL1未満に低減され、且つ、加速トルク制限値が加速トルク制限標準値TL1未満に低減される場合の各種物理量の推移を示す。
また、旋回エネルギE及び旋回トルクτは以下の式で表される。なお、Jは上部旋回体3の慣性モーメントを表す。また、τ0(ω)は摩擦損失等に抗して一定の旋回角速度ωを維持するのに必要な旋回トルクを表し、維持すべき旋回用電動機21の旋回角速度ωが大きいほど大きい。
旋回制限処理が実行される場合、すなわち、速度制限値及び加速トルク制限値が標準値未満に低減される場合、時刻taにおいて旋回操作レバーが操作されると、図8(C)の破線で示すように、旋回トルク(加速トルク)τは時刻taで増大し始め、時刻tbで現在の加速トルク制限値に対応する値τ2となるまで増大する。その後、時刻tdで旋回角速度ωが現在の速度制限値に対応する値ω2に達するまで(図8(A)の破線参照。)、旋回トルク(加速トルク)τは値τ2のまま推移する。旋回トルク(加速トルク)τが値τ2のまま推移する時刻tbから時刻tdまでの期間では、上述の(2)式から分かるように、旋回角速度ωは一定の旋回角加速度で増大する。
時刻tdで旋回角速度ωが値ω2に達すると、旋回トルク(加速トルク)τは、現在の旋回角速度ω2を維持するために最低限必要な値τ3b(=τ0(ω2))まで低減される((2)式参照。)。
その後、旋回トルク(減速トルク)τは、時刻thで上部旋回体3の旋回を停止させるために、時刻tgにおいて減速トルク制限標準値に対応する値τ4とされる。そのため、旋回角速度ωは時刻tgで減少し始め、時刻thで値ゼロに至る。
一方、旋回制限処理が実行されない場合、時刻taにおいて旋回操作レバーが操作されると、図8(C)の実線で示すように、旋回トルク(加速トルク)τは時刻taで増大し始め、時刻tcで加速トルク制限標準値TL1に対応する値τ1となるまで増大する。その後、時刻teで旋回角速度ωが速度制限標準値SL1に対応する値ω1に達するまで(図8(A)の実線参照。)、旋回トルク(加速トルク)τは値τ1のまま推移する。旋回トルク(加速トルク)τが値τ1のまま推移する時刻tcから時刻teの期間では、上述の(2)式から分かるように、旋回角速度ωは一定の旋回角加速度で増大する。
時刻teで旋回角速度ωが値ω1に達すると、旋回トルク(加速トルク)τは、現在の旋回角速度ω1を維持するために最低限必要な値τ3a(=τ0(ω1)>τ3b(=τ0(ω2)))まで低減される((2)式参照。)。
その後、旋回トルク(減速トルク)τは、時刻thで上部旋回体3の旋回を停止させるために、時刻tfにおいて減速トルク制限標準値に対応する値τ4とされる。そのため、旋回角速度ωは時刻tfで減少し始め、時刻thで値ゼロに至る。
ここで、旋回制限処理が実行される場合と実行されない場合とを比較すると、図8(A)に示すように旋回角速度ωの最大値を約3分の2(≒ω2/ω1)に制限することで、図8(B)に示すように旋回エネルギEの最大値が約2分の1(≒E2/E1)に制限され、その結果、図8(C)に示すように、制動時間がD1からD2に短縮されることが分かる。
以上の構成により、コントローラ30は、旋回用電動機21及びインバータ20の少なくとも一方の温度が高いほど旋回用電動機21の加速トルクの上限を低減させる。具体的には、旋回用電動機21及びインバータ20の少なくとも一方の温度が高いほど、すなわち、旋回駆動系の負荷率が大きいほど加速トルク制限値を低減させる。そのため、コントローラ30は、旋回押し付け作業等により負荷率が継続的に増大する場合であっても、負荷率の増大を緩やかにすることができる。また、コントローラ30は、トルク電流指令値を緩やかに低減させることができ、加速トルクの急減に起因するショックを防止しながら、旋回用電動機21の旋回トルクをより適切に制限できる。
また、コントローラ30は、旋回用電動機21及びインバータ20の少なくとも一方の温度が上昇するにつれて増加する負荷率を算出し、その負荷率の増加に応じて旋回用電動機21の加速トルクの上限を低減させる。そして、旋回用電動機21の加速トルクが上限で推移する状態が継続するほど負荷率の時間に対する増加率を逓減させる。そのため、負荷率が過負荷レベルに達するのを抑制し或いは防止することができる。
また、旋回用電動機21及びインバータ20の少なくとも一方の温度は、旋回用電動機21を流れる電流の積算値から推定される。そのため、コントローラ30は、旋回用電動機21及びインバータ20の温度を直接測定しなくとも、旋回用電動機21に関するモータ駆動電流の積算値から旋回用電動機21及びインバータ20の温度を推定でき、推定した温度に基づいて旋回用電動機21の旋回トルクを適切に制限できる。
また、コントローラ30は、旋回用電動機21及びインバータ20の少なくとも一方の温度が高いほど旋回用電動機21の許容最大旋回速度を低減させる。そのため、コントローラ30は、許容最大旋回速度で旋回している上部旋回体3を停止させる場合の総減速トルクを抑制することができる。その結果、コントローラ30は、減速トルクを制限しなくとも、旋回減速中に負荷率が過負荷レベルに達するのを抑制或いは防止しながら上部旋回体3を適切に停止させることができる。
また、コントローラ30は、旋回押し付け作業中に加速トルクを制限することで旋回用電動機21の過熱を防止できると共に、土砂等の押し付け対象が押し退けられて旋回負荷が急減した場合に上部旋回体3が急加速することを防止できる。また、コントローラ30は、旋回速度も制限しているため、土砂等の押し付け対象が押し退けられて旋回負荷が急減した場合に上部旋回体3の旋回速度が過度に大きくなることを防止できる。
以上、本発明の好ましい実施例について詳説したが、本発明は、上述した実施例に制限されることはなく、本発明の範囲を逸脱することなしに上述した実施例に種々の変形及び置換を加えることができる。
例えば、上述の実施例において、コントローラ30は速度制限生成部38を含むが、速度制限生成部38は省略されてもよい。この場合、速度制限部32は、上述の実施例において加速トルクが発生しないと判定された場合と同様、負荷率の変動とは無関係に設定される速度制限値を用いて速度指令値をその速度制限値以下に制限してもよい。