以下、添付の図面を参照しながら、本開示の限定的でない例示の実施形態について説明する。添付の全図面中、同一又は対応する部材又は部品については、同一又は対応する参照符号を付し、重複する説明を省略する。
最初に、図1を参照し、本実施形態のショベル100の作業支援装置200を含む作業支援システムSYSについて説明する。図1は、作業支援システムSYSの構成例を示す図である。
作業支援システムSYSは、ショベル100に関する作業を支援するシステムである。ショベル100に関する作業は、ショベル100の部品を交換する作業、ショベル100の故障の原因を特定する作業、原因を特定した後の修理に関する作業等を含む。本実施形態では、作業支援システムSYSは、主に、ショベル100、作業支援装置200、及び管理装置300を含む。作業支援システムSYSを構成するショベル100、作業支援装置200、及び管理装置300は、それぞれ1台であってもよく複数台であってもよい。本実施形態では、作業支援システムSYSは、1台のショベル100と、1台の作業支援装置200と、1台の管理装置300と、を含む。
作業支援装置200は、携帯端末装置であり、例えば、作業現場にいる作業者等が携帯するタブレットPC、スマートフォン、ウェアラブルPC、スマートグラス等を含む。
管理装置300は、管理サーバ等の固定端末装置であり、例えば、作業現場外の管理センタ等に設置されるコンピュータを含む。管理装置300は、例えば、ノートPC、タブレットPC、スマートフォン等の可搬性のコンピュータであってもよい。
次に、図2から図4を参照し、本実施形態のショベル100について説明する。図2は本実施形態のショベル100の側面図であり、図3は本実施形態のショベル100の上面図である。図4は、本実施形態のショベル100に搭載される姿勢検出装置の一例を示すショベルの側面図である。
本実施形態では、ショベル100の下部走行体1はクローラ1Cを含む。クローラ1Cは、下部走行体1に搭載されている走行アクチュエータとしての走行油圧モータ2Mによって駆動される。具体的には、クローラ1Cは左クローラ1CL及び右クローラ1CRを含む。左クローラ1CLは左走行油圧モータ2MLによって駆動され、右クローラ1CRは右走行油圧モータ2MRによって駆動される。
下部走行体1には、旋回機構2を介して上部旋回体3が旋回可能に搭載されている。旋回機構2は、上部旋回体3に搭載されている旋回アクチュエータとしての旋回油圧モータ2Aによって駆動される。ただし、旋回アクチュエータは、電動アクチュエータとしての旋回電動発電機であってもよい。
上部旋回体3には、ブーム4が取り付けられている。ブーム4の先端にはアーム5が取り付けられ、アーム5の先端にはエンドアタッチメントとしてのバケット6が取り付けられている。ブーム4、アーム5、及びバケット6は、アタッチメントの一例である掘削アタッチメントATを構成する。ブーム4はブームシリンダ7で駆動され、アーム5はアームシリンダ8で駆動され、バケット6はバケットシリンダ9で駆動される。ブームシリンダ7、アームシリンダ8、及びバケットシリンダ9は、アタッチメントアクチュエータを構成している。エンドアタッチメントは、法面バケットであってもよい。また、バケット6は、着脱可能に構成され、必要に応じてグラップル、ブレーカ又はリフティングマグネット等と取り換えられる。
ブーム4は、上部旋回体3に対して上下に回動可能に支持されている。ブーム4には、ブーム角度センサS1が取り付けられている。ブーム角度センサS1は、ブーム4の回動角度であるブーム角度θ1を検出する。ブーム角度θ1は、例えばXZ平面において、ブームフートピン位置P1とアーム連結ピン位置P2とを結ぶ線分の水平線に対する角度である。
アーム5は、ブーム4に対して回動可能に支持されている。アーム5には、アーム角度センサS2が取り付けられている。アーム角度センサS2は、アーム5の回動角度であるアーム角度θ2を検出する。アーム角度θ2は、例えばXZ平面において、アーム連結ピン位置P2とバケット連結ピン位置P3とを結ぶ線分の水平線に対する角度である。
バケット6は、アーム5に対して回動可能に支持されている。バケット6には、バケット角度センサS3が取り付けられている。バケット角度センサS3は、バケット6の回動角度であるバケット角度θ3を検出する。バケット角度θ3は、例えばXZ平面において、バケット連結ピン位置P3とバケット爪先位置P4とを結ぶ線分の水平線に対する角度である。
なお、図4に示されるXZ平面において、ブームフートピン位置P1とアーム連結ピン位置P2とを結ぶ線分の長さをL1、アーム連結ピン位置P2とバケット連結ピン位置P3とを結ぶ線分L2の長さをL2とする。また、バケット連結ピン位置P3とバケット爪先位置P4とを結ぶ線分の長さをL3-1、バケット連結ピン位置P3とバケット背面位置P5とを結ぶ線分の長さをL3-2とする。
本実施形態では、ブーム角度センサS1、アーム角度センサS2、及びバケット角度センサS3のそれぞれは、加速度センサとジャイロセンサの組み合わせで構成されている。ただし、加速度センサのみで構成されていてもよい。また、ブーム角度センサS1は、ブームシリンダ7に取り付けられたストロークセンサであってもよく、ロータリエンコーダ、ポテンショメータ、慣性計測装置等であってもよい。アーム角度センサS2及びバケット角度センサS3についても同様である。
上部旋回体3には、運転室としてのキャビン10が設けられ、且つ、エンジン11等の動力源が搭載されている。エンジン11は、カバー3aにより覆われている。また、上部旋回体3には、空間認識装置70、向き検出装置71、測位装置73、通信装置74、機体傾斜センサS4、及び旋回角速度センサS5等が取り付けられている。キャビン10の内部には、操作装置26、コントローラ30、情報入力装置72、表示装置D1、及び音声出力装置D2等が設けられている。なお、本明細書では、便宜上、上部旋回体3における、掘削アタッチメントATが取り付けられている側を前方とし、カウンタウェイトが取り付けられている側を後方とする。
空間認識装置70は、ショベル100の周囲の三次元空間に存在する物体を認識するように構成されている。また、空間認識装置70は、空間認識装置70又はショベル100から認識された物体(例えばバケット6)までの距離を算出するように構成されていてもよい。空間認識装置70は、例えば、超音波センサ、ミリ波レーダ、単眼カメラ、ステレオカメラ、LIDAR、距離画像センサ、赤外線センサ等、又はそれらの任意の組み合わせを含む。本実施形態では、空間認識装置70は、前方センサ70F、後方センサ70B、左方センサ70L、及び右方センサ70Rを含む。前方センサ70Fはキャビン10の上面前端に取り付けられ、後方センサ70Bは上部旋回体3の上面後端に取り付けられている。左方センサ70Lは上部旋回体3の上面左端に取り付けられ、右方センサ70Rは上部旋回体3の上面右端に取り付けられている。上部旋回体3の上方の空間に存在する物体を認識する上方センサがショベル100に取り付けられていてもよい。このようにして、空間認識装置70は、ショベル100の周囲の電線、電柱、人、動物、車両(ダンプトラック等)、作業機材、建設機械、建造物、電線、柵等の障害物を検出する。更に、ヘルメット、安全ベスト、作業服やヘルメットに装着された所定のマーク等により人を判定してもよい。また、空間認識装置70は、例えば、CCDやCMOS等の撮像素子を有する単眼カメラであり、撮像した画像を表示装置D1に出力する。空間認識装置70は、ライダLIDAR、ステレオカメラ、又は距離画像カメラ等であってもよい。また、空間認識装置70は、空間認識装置70又はショベル100から認識された物体(例えばバケット6)までの距離を算出するように構成されていてもよい。撮像した画像を利用するだけでなく、空間認識装置70としてミリ波レーダ、超音波センサ、又はレーザレーダ等を利用する場合には、多数の信号(レーザ光等)を物体に発信し、その反射信号を受信することで、反射信号から物体の距離及び方向を検出してもよい。
向き検出装置71は、上部旋回体3の向きと下部走行体1の向きとの相対的な関係に関する情報を検出するように構成されている。向き検出装置71は、例えば、下部走行体1に取り付けられた地磁気センサと上部旋回体3に取り付けられた地磁気センサの組み合わせで構成されていてもよい。或いは、向き検出装置71は、下部走行体1に取り付けられたGNSS受信機と上部旋回体3に取り付けられたGNSS受信機の組み合わせで構成されていてもよい。向き検出装置71は、ロータリエンコーダ、ロータリポジションセンサ等、又はそれらの任意の組み合わせであってもよい。旋回電動発電機で上部旋回体3が旋回駆動される構成では、向き検出装置71は、レゾルバで構成されていてもよい。向き検出装置71は、例えば、下部走行体1と上部旋回体3との間の相対回転を実現する旋回機構2に関連して設けられるセンタージョイントに取り付けられていてもよい。
向き検出装置71は、上部旋回体3に取り付けられたカメラで構成されていてもよい。この場合、向き検出装置71は、上部旋回体3に取り付けられているカメラが撮像した画像(入力画像)に既知の画像処理を施して入力画像に含まれる下部走行体1の画像を検出する。そして、向き検出装置71は、既知の画像認識技術を用いて下部走行体1の画像を検出することで、下部走行体1の長手方向を特定する。そして、上部旋回体3の前後軸の方向と下部走行体1の長手方向との間に形成される角度を導き出す。上部旋回体3の前後軸の方向は、カメラの取り付け位置から導き出される。特に、クローラ1Cは上部旋回体3から突出しているため、向き検出装置71は、クローラ1Cの画像を検出することで下部走行体1の長手方向を特定できる。この場合、向き検出装置71は、コントローラ30に統合されていてもよい。また、カメラは、空間認識装置70であってもよい。
情報入力装置72は、ショベルの操作者がコントローラ30に対して情報を入力できるように構成されている。本実施形態では、情報入力装置72は、表示装置D1の表示部に近接して設置されるスイッチパネルである。ただし、情報入力装置72は、表示装置D1の表示部の上に配置されるタッチパネルであってもよく、キャビン10内に配置されているマイクロフォン等の音声入力装置であってもよい。また、情報入力装置72は、外部からの情報を取得する通信装置であってもよい。
測位装置73は、上部旋回体3の位置を測定するように構成されている。本実施形態では、測位装置73は、GNSS受信機であり、上部旋回体3の位置を検出し、検出値をコントローラ30に対して出力する。測位装置73は、GNSSコンパスであってもよい。この場合、測位装置73は、上部旋回体3の位置及び向きを検出できるため、向き検出装置71としても機能する。
通信装置74は、ショベル100の外部にある外部機器との通信を制御するように構成されている。本実施形態では、通信装置74は、衛星通信網、携帯電話通信網、インターネット網等を介した外部機器との通信を制御する。また、通信装置74は、Wi-Fi(登録商標)、Bluetooth(登録商標)、無線LAN等の近距離無線通信網を介した作業支援装置200との通信を制御してもよい。
機体傾斜センサS4は、所定の平面に対する上部旋回体3の傾斜を検出する。本実施形態では、機体傾斜センサS4は、水平面に関する上部旋回体3の前後軸回りの傾斜角θ4及び左右軸回りの傾斜角を検出する加速度センサである。上部旋回体3の前後軸及び左右軸は、例えば、互いに直交してショベル100の旋回軸上の一点であるショベル中心点を通る。
旋回角速度センサS5は、上部旋回体3の旋回角速度を検出する。本実施形態では、ジャイロセンサである。レゾルバ、ロータリエンコーダ等、又はそれらの任意の組み合わせであってもよい。旋回角速度センサS5は、旋回速度を検出してもよい。旋回速度は、旋回角速度から算出されてもよい。
以下では、ブーム角度センサS1、アーム角度センサS2、バケット角度センサS3、機体傾斜センサS4、及び旋回角速度センサS5の少なくとも1つは、姿勢検出装置とも称される。掘削アタッチメントATの姿勢は、例えば、ブーム角度センサS1、アーム角度センサS2、及びバケット角度センサS3のそれぞれの出力に基づいて検出される。
表示装置D1は、情報を表示する装置である。本実施形態では、表示装置D1は、キャビン10内に設置された液晶ディスプレイである。ただし、表示装置D1は、スマートフォン等の携帯端末のディスプレイであってもよい。
音声出力装置D2は、音声を出力する装置である。音声出力装置D2は、キャビン10内の操作者に向けて音声を出力する装置及びキャビン10外の作業者に向けて音声を出力する装置の少なくとも1つを含む。携帯端末のスピーカであってもよい。
操作装置26は、操作者がアクチュエータの操作のために用いる装置である。操作装置26は、例えば、操作レバー及び操作ペダルを含む。アクチュエータは、油圧アクチュエータ及び電動アクチュエータの少なくとも1つを含む。
コントローラ30は、ショベル100を制御するための制御装置である。本実施形態では、コントローラ30は、CPU、揮発性記憶装置及び不揮発性記憶装置等を備えたコンピュータで構成されている。そして、コントローラ30は、各機能に対応するプログラムを不揮発性記憶装置から読み出して揮発性記憶装置にロードし、対応する処理をCPUに実行させる。各機能は、例えば、マシンガイダンス機能と、マシンコントロール機能と、を含む。マシンガイダンス機能は、操作者によるショベル100の手動操作をガイド(案内)する機能である。マシンコントロール機能は、操作者によるショベル100の手動操作を支援したり、ショベル100を自動的又は自律的に動作させたりする機能である。コントローラ30は、ショベル100の周囲に存在する物体とショベル100との接触を回避するためにショベル100を自動的又は自律的に動作させたり、停止させたりする接触回避機能を含んでいてもよい。
次に、図5を参照し、ショベル100に搭載される油圧システムの構成例について説明する。図5は、ショベル100に搭載される油圧システムの構成例を示す図である。図5は、機械的動力伝達系、作動油ライン、パイロットライン、及び電気制御系を、それぞれ、二重線、実線、破線、及び点線で示している。
ショベル100の油圧システムは、主に、エンジン11、レギュレータ13、メインポンプ14、パイロットポンプ15、コントロールバルブ17、操作装置26、吐出圧センサ28、操作圧センサ29、及びコントローラ30等を含む。
図5において、油圧システムは、エンジン11によって駆動されるメインポンプ14から、センターバイパス管路40又はパラレル管路42を経て作動油タンクまで作動油を循環させる。
エンジン11は、ショベル100の駆動源である。本実施形態では、エンジン11は、例えば、所定の回転数を維持するように動作するディーゼルエンジンである。エンジン11の出力軸は、メインポンプ14及びパイロットポンプ15のそれぞれの入力軸に連結されている。
メインポンプ14は、作動油ラインを介して作動油をコントロールバルブ17に供給する。本実施形態では、メインポンプ14は、斜板式可変容量型油圧ポンプである。
レギュレータ13は、メインポンプ14の吐出量を制御する。本実施形態では、レギュレータ13は、コントローラ30からの制御指令に応じてメインポンプ14の斜板傾転角を調節することによってメインポンプ14の吐出量を制御する。
パイロットポンプ15は、パイロット圧生成装置の一例であり、パイロットラインを介して操作装置26を含む油圧制御機器に作動油を供給する。本実施形態では、パイロットポンプ15は、固定容量型油圧ポンプである。ただし、パイロット圧生成装置は、メインポンプ14によって実現されてもよい。すなわち、メインポンプ14は、作動油ラインを介して作動油をコントロールバルブ17に供給する機能に加え、パイロットラインを介して操作装置26を含む各種の油圧制御機器に作動油を供給する機能を備えていてもよい。この場合、パイロットポンプ15は、省略されてもよい。
コントロールバルブ17は、ショベル100における油圧システムを制御する油圧制御装置である。本実施形態では、コントロールバルブ17は、制御弁171~176を含む。制御弁175は制御弁175L及び制御弁175Rを含み、制御弁176は制御弁176L及び制御弁176Rを含む。コントロールバルブ17は、制御弁171~176を通じ、メインポンプ14が吐出する作動油を1又は複数の油圧アクチュエータに選択的に供給する。制御弁171~176は、例えば、メインポンプ14から油圧アクチュエータに流れる作動油の流量、及び油圧アクチュエータから作動油タンクに流れる作動油の流量を制御する。油圧アクチュエータは、ブームシリンダ7、アームシリンダ8、バケットシリンダ9、左走行油圧モータ2ML、右走行油圧モータ2MR、及び旋回油圧モータ2Aを含む。
操作装置26は、パイロットラインを介して、パイロットポンプ15が吐出する作動油を、コントロールバルブ17内の対応する制御弁のパイロットポートに供給する。パイロットポートのそれぞれに供給される作動油の圧力(パイロット圧)は、油圧アクチュエータのそれぞれに対応する操作装置26の操作方向及び操作量に応じた圧力である。ただし、操作装置26は、上述のようなパイロット圧式ではなく、電気制御式であってもよい。この場合、コントロールバルブ17内の制御弁は、電磁ソレノイド式スプール弁であってもよい。
吐出圧センサ28は、メインポンプ14の吐出圧を検出する。本実施形態では、吐出圧センサ28は、検出した値をコントローラ30に対して出力する。
操作圧センサ29は、操作者による操作装置26の操作の内容を検出する。本実施形態では、操作圧センサ29は、アクチュエータのそれぞれに対応する操作装置26の操作方向及び操作量を圧力(操作圧)の形で検出し、検出した値をコントローラ30に対して出力する。操作装置26の操作の内容は、操作圧センサ以外の他のセンサを用いて検出されてもよい。
メインポンプ14は、左メインポンプ14L及び右メインポンプ14Rを含む。左メインポンプ14Lは、左センターバイパス管路40L又は左パラレル管路42Lを経て作動油タンクまで作動油を循環させる。右メインポンプ14Rは、右センターバイパス管路40R又は右パラレル管路42Rを経て作動油タンクまで作動油を循環させる。
左センターバイパス管路40Lは、コントロールバルブ17内に配置された制御弁171、173、175L及び176Lを通る作動油ラインである。右センターバイパス管路40Rは、コントロールバルブ17内に配置された制御弁172、174、175R及び176Rを通る作動油ラインである。
制御弁171は、左メインポンプ14Lが吐出する作動油を左走行油圧モータ2MLへ供給し、且つ、左走行油圧モータ2MLが吐出する作動油を作動油タンクへ排出するために作動油の流れを切り換えるスプール弁である。
制御弁172は、右メインポンプ14Rが吐出する作動油を右走行油圧モータ2MRへ供給し、且つ、右走行油圧モータ2MRが吐出する作動油を作動油タンクへ排出するために作動油の流れを切り換えるスプール弁である。
制御弁173は、左メインポンプ14Lが吐出する作動油を旋回油圧モータ2Aへ供給し、且つ、旋回油圧モータ2Aが吐出する作動油を作動油タンクへ排出するために作動油の流れを切り換えるスプール弁である。
制御弁174は、右メインポンプ14Rが吐出する作動油をバケットシリンダ9へ供給し、且つ、バケットシリンダ9内の作動油を作動油タンクへ排出するために作動油の流れを切り換えるスプール弁である。
制御弁175Lは、左メインポンプ14Lが吐出する作動油をブームシリンダ7へ供給するために作動油の流れを切り換えるスプール弁である。制御弁175Rは、右メインポンプ14Rが吐出する作動油をブームシリンダ7へ供給し、且つ、ブームシリンダ7内の作動油を作動油タンクへ排出するために作動油の流れを切り換えるスプール弁である。
制御弁176Lは、左メインポンプ14Lが吐出する作動油をアームシリンダ8へ供給し、且つ、アームシリンダ8内の作動油を作動油タンクへ排出するために作動油の流れを切り換えるスプール弁である。
制御弁176Rは、右メインポンプ14Rが吐出する作動油をアームシリンダ8へ供給し、且つ、アームシリンダ8内の作動油を作動油タンクへ排出するために作動油の流れを切り換えるスプール弁である。
左パラレル管路42Lは、左センターバイパス管路40Lに並行する作動油ラインである。左パラレル管路42Lは、制御弁171、173及び175Lの何れかによって左センターバイパス管路40Lを通る作動油の流れが制限或いは遮断された場合に、より下流の制御弁に作動油を供給する。
右パラレル管路42Rは、右センターバイパス管路40Rに並行する作動油ラインである。右パラレル管路42Rは、制御弁172、174及び175Rの何れかによって右センターバイパス管路40Rを通る作動油の流れが制限或いは遮断された場合に、より下流の制御弁に作動油を供給する。
レギュレータ13は、左レギュレータ13L及び右レギュレータ13Rを含む。左レギュレータ13Lは、左メインポンプ14Lの吐出圧に応じて左メインポンプ14Lの斜板傾転角を調節することによって、左メインポンプ14Lの吐出量を制御する。具体的には、左レギュレータ13Lは、例えば、左メインポンプ14Lの吐出圧の増大に応じて左メインポンプ14Lの斜板傾転角を調節して吐出量を減少させる。右レギュレータ13Rについても同様である。吐出圧と吐出量との積で表されるメインポンプ14の吸収パワー(吸収馬力)がエンジン11の出力パワー(出力馬力)を超えないようにするためである。
操作装置26は、左操作レバー26L、右操作レバー26R、及び走行レバー26Dを含む。走行レバー26Dは、左走行レバー26DL及び右走行レバー26DRを含む。
左操作レバー26Lは、旋回操作とアーム5の操作に用いられる。左操作レバー26Lは、前後方向に操作されると、パイロットポンプ15が吐出する作動油を利用し、レバー操作量に応じた制御圧を制御弁176のパイロットポートに導入させる。また、左右方向に操作されると、パイロットポンプ15が吐出する作動油を利用し、レバー操作量に応じた制御圧を制御弁173のパイロットポートに導入させる。
具体的には、左操作レバー26Lは、アーム閉じ方向に操作された場合に、制御弁176Lの右側パイロットポートに作動油を導入させ、且つ、制御弁176Rの左側パイロットポートに作動油を導入させる。また、左操作レバー26Lは、アーム開き方向に操作された場合には、制御弁176Lの左側パイロットポートに作動油を導入させ、且つ、制御弁176Rの右側パイロットポートに作動油を導入させる。また、左操作レバー26Lは、左旋回方向に操作された場合に、制御弁173の左側パイロットポートに作動油を導入させ、右旋回方向に操作された場合に、制御弁173の右側パイロットポートに作動油を導入させる。
右操作レバー26Rは、ブーム4の操作とバケット6の操作に用いられる。右操作レバー26Rは、前後方向に操作されると、パイロットポンプ15が吐出する作動油を利用し、レバー操作量に応じた制御圧を制御弁175のパイロットポートに導入させる。また、左右方向に操作されると、パイロットポンプ15が吐出する作動油を利用し、レバー操作量に応じた制御圧を制御弁174のパイロットポートに導入させる。
具体的には、右操作レバー26Rは、ブーム下げ方向に操作された場合に、制御弁175Rの左側パイロットポートに作動油を導入させる。また、右操作レバー26Rは、ブーム上げ方向に操作された場合には、制御弁175Lの右側パイロットポートに作動油を導入させ、且つ、制御弁175Rの左側パイロットポートに作動油を導入させる。また、右操作レバー26Rは、バケット閉じ方向に操作された場合に、制御弁174の右側パイロットポートに作動油を導入させ、バケット開き方向に操作された場合に、制御弁174の左側パイロットポートに作動油を導入させる。
走行レバー26Dは、クローラ1Cの操作に用いられる。具体的には、左走行レバー26DLは、左クローラ1CLの操作に用いられる。左走行ペダルと連動するように構成されていてもよい。左走行レバー26DLは、前後方向に操作されると、パイロットポンプ15が吐出する作動油を利用し、レバー操作量に応じた制御圧を制御弁171のパイロットポートに導入させる。右走行レバー26DRは、右クローラ1CRの操作に用いられる。右走行ペダルと連動するように構成されていてもよい。右走行レバー26DRは、前後方向に操作されると、パイロットポンプ15が吐出する作動油を利用し、レバー操作量に応じた制御圧を制御弁172のパイロットポートに導入させる。
吐出圧センサ28は、吐出圧センサ28L及び吐出圧センサ28Rを含む。吐出圧センサ28Lは、左メインポンプ14Lの吐出圧を検出し、検出した値をコントローラ30に対して出力する。吐出圧センサ28Rについても同様である。
操作圧センサ29は、操作圧センサ29LA、29LB、29RA、29RB、29DL、29DRを含む。操作圧センサ29LAは、操作者による左操作レバー26Lに対する前後方向への操作の内容を圧力の形で検出し、検出した値をコントローラ30に対して出力する。操作の内容は、例えば、レバー操作方向、レバー操作量(レバー操作角度)等である。
同様に、操作圧センサ29LBは、操作者による左操作レバー26Lに対する左右方向への操作の内容を圧力の形で検出し、検出した値をコントローラ30に対して出力する。操作圧センサ29RAは、操作者による右操作レバー26Rに対する前後方向への操作の内容を圧力の形で検出し、検出した値をコントローラ30に対して出力する。操作圧センサ29RBは、操作者による右操作レバー26Rに対する左右方向への操作の内容を圧力の形で検出し、検出した値をコントローラ30に対して出力する。操作圧センサ29DLは、操作者による左走行レバー26DLに対する前後方向への操作の内容を圧力の形で検出し、検出した値をコントローラ30に対して出力する。操作圧センサ29DRは、操作者による右走行レバー26DRに対する前後方向への操作の内容を圧力の形で検出し、検出した値をコントローラ30に対して出力する。
コントローラ30は、操作圧センサ29の出力を受信し、必要に応じてレギュレータ13に対して制御指令を出力し、メインポンプ14の吐出量を変化させる。また、コントローラ30は、絞り18の上流に設けられた制御圧センサ19の出力を受信し、必要に応じてレギュレータ13に対して制御指令を出力し、メインポンプ14の吐出量を変化させる。絞り18は左絞り18L及び右絞り18Rを含み、制御圧センサ19は左制御圧センサ19L及び右制御圧センサ19Rを含む。
左センターバイパス管路40Lには、最も下流にある制御弁176Lと作動油タンクとの間に左絞り18Lが配置されている。そのため、左メインポンプ14Lが吐出した作動油の流れは、左絞り18Lで制限される。そして、左絞り18Lは、左レギュレータ13Lを制御するための制御圧を発生させる。左制御圧センサ19Lは、この制御圧を検出するためのセンサであり、検出した値をコントローラ30に対して出力する。コントローラ30は、この制御圧に応じて左メインポンプ14Lの斜板傾転角を調節することによって、左メインポンプ14Lの吐出量を制御する。コントローラ30は、この制御圧が大きいほど左メインポンプ14Lの吐出量を減少させ、この制御圧が小さいほど左メインポンプ14Lの吐出量を増大させる。右メインポンプ14Rの吐出量も同様に制御される。
具体的には、図5で示されるように、ショベル100における油圧アクチュエータが何れも操作されていない待機状態の場合、左メインポンプ14Lが吐出する作動油は、左センターバイパス管路40Lを通って左絞り18Lに至る。そして、左メインポンプ14Lが吐出する作動油の流れは、左絞り18Lの上流で発生する制御圧を増大させる。その結果、コントローラ30は、左メインポンプ14Lの吐出量を許容最小吐出量まで減少させ、吐出した作動油が左センターバイパス管路40Lを通過する際の圧力損失(ポンピングロス)を抑制する。一方、何れかの油圧アクチュエータが操作された場合、左メインポンプ14Lが吐出する作動油は、操作対象の油圧アクチュエータに対応する制御弁を介して、操作対象の油圧アクチュエータに流れ込む。そして、左メインポンプ14Lが吐出する作動油の流れは、左絞り18Lに至る量を減少或いは消失させ、左絞り18Lの上流で発生する制御圧を低下させる。その結果、コントローラ30は、左メインポンプ14Lの吐出量を増大させ、操作対象の油圧アクチュエータに十分な作動油を循環させ、操作対象の油圧アクチュエータの駆動を確かなものとする。なお、コントローラ30は、右メインポンプ14Rの吐出量も同様に制御する。
上述のような構成により、図5の油圧システムは、待機状態においては、メインポンプ14における無駄なエネルギ消費を抑制できる。無駄なエネルギ消費は、メインポンプ14が吐出する作動油がセンターバイパス管路40で発生させるポンピングロスを含む。また、図5の油圧システムは、油圧アクチュエータを作動させる場合には、メインポンプ14から必要十分な作動油を作動対象の油圧アクチュエータに確実に供給できる。
次に、図6A~図6Dを参照し、コントローラ30がマシンコントロール機能によってアクチュエータを動作させるための構成について説明する。図6A~図6Dは、ショベル100に搭載される油圧システムの一部を抜き出した図である。具体的には、図6Aは、アームシリンダ8の操作に関する油圧システム部分を抜き出した図であり、図6Bは、ブームシリンダ7の操作に関する油圧システム部分を抜き出した図である。図6Cは、バケットシリンダ9の操作に関する油圧システム部分を抜き出した図であり、図6Dは、旋回油圧モータ2Aの操作に関する油圧システム部分を抜き出した図である。
図6A~図6Dに示されるように、油圧システムは、比例弁31及びシャトル弁32を含む。比例弁31は、比例弁31AL~31DL及び31AR~31DRを含み、シャトル弁32は、シャトル弁32AL~32DL及び32AR~32DRを含む。
比例弁31は、マシンコントロール用制御弁として機能する。比例弁31は、パイロットポンプ15とシャトル弁32とを接続する管路に配置され、その管路の流路面積を変更できるように構成されている。本実施形態では、比例弁31は、コントローラ30が出力する制御指令に応じて動作する。そのため、コントローラ30は、操作者による操作装置26の操作とは無関係に、パイロットポンプ15が吐出する作動油を、比例弁31及びシャトル弁32を介し、コントロールバルブ17内の対応する制御弁のパイロットポートに供給できる。
シャトル弁32は、2つの入口ポートと1つの出口ポートを有する。2つの入口ポートのうちの1つは操作装置26に接続され、他方は比例弁31に接続されている。出口ポートは、コントロールバルブ17内の対応する制御弁のパイロットポートに接続されている。そのため、シャトル弁32は、操作装置26が生成するパイロット圧と比例弁31が生成するパイロット圧のうちの高い方を、対応する制御弁のパイロットポートに作用させることができる。
この構成により、コントローラ30は、特定の操作装置26に対する操作が行われていない場合であっても、その特定の操作装置26に対応する油圧アクチュエータを動作させることができる。
例えば、図6Aに示されるように、左操作レバー26Lは、アーム5を操作するために用いられる。具体的には、左操作レバー26Lは、パイロットポンプ15が吐出する作動油を利用し、前後方向への操作に応じたパイロット圧を制御弁176のパイロットポートに作用させる。より具体的には、左操作レバー26Lは、アーム閉じ方向(後方向)に操作された場合に、操作量に応じたパイロット圧を制御弁176Lの右側パイロットポートと制御弁176Rの左側パイロットポートに作用させる。また、左操作レバー26Lは、アーム開き方向(前方向)に操作された場合には、操作量に応じたパイロット圧を制御弁176Lの左側パイロットポートと制御弁176Rの右側パイロットポートに作用させる。
左操作レバー26LにはスイッチNSが設けられている。本実施形態では、スイッチNSは、左操作レバー26Lの先端に設けられた押しボタンスイッチである。操作者は、スイッチNSを押しながら左操作レバー26Lを操作できる。スイッチNSは、右操作レバー26Rに設けられていてもよく、キャビン10内の他の位置に設けられていてもよい。
操作圧センサ29LAは、操作者による左操作レバー26Lに対する前後方向への操作の内容を圧力の形で検出し、検出した値をコントローラ30に対して出力する。
比例弁31ALは、コントローラ30が出力する制御指令(電流指令)に応じて動作する。そして、パイロットポンプ15から比例弁31AL及びシャトル弁32ALを介して制御弁176Lの右側パイロットポート及び制御弁176Rの左側パイロットポートに導入される作動油によるパイロット圧を調整する。比例弁31ARは、コントローラ30が出力する制御指令(電流指令)に応じて動作する。そして、パイロットポンプ15から比例弁31AR及びシャトル弁32ARを介して制御弁176Lの左側パイロットポート及び制御弁176Rの右側パイロットポートに導入される作動油によるパイロット圧を調整する。比例弁31AL、31ARは、制御弁176L、176Rを任意の弁位置で停止できるようにパイロット圧を調整可能である。
この構成により、コントローラ30は、操作者によるアーム閉じ操作とは無関係に、パイロットポンプ15が吐出する作動油を、比例弁31AL及びシャトル弁32ALを介し、制御弁176Lの右側パイロットポート及び制御弁176Rの左側パイロットポートに供給できる。すなわち、アーム5を閉じることができる。また、コントローラ30は、操作者によるアーム開き操作とは無関係に、パイロットポンプ15が吐出する作動油を、比例弁31AR及びシャトル弁32ARを介し、制御弁176Lの左側パイロットポート及び制御弁176Rの右側パイロットポートに供給できる。すなわち、アーム5を開くことができる。
また、図6Bに示されるように、右操作レバー26Rは、ブーム4を操作するために用いられる。具体的には、右操作レバー26Rは、パイロットポンプ15が吐出する作動油を利用し、前後方向への操作に応じたパイロット圧を制御弁175のパイロットポートに作用させる。より具体的には、右操作レバー26Rは、ブーム上げ方向(後方向)に操作された場合に、操作量に応じたパイロット圧を制御弁175Lの右側パイロットポートと制御弁175Rの左側パイロットポートに作用させる。また、右操作レバー26Rは、ブーム下げ方向(前方向)に操作された場合には、操作量に応じたパイロット圧を制御弁175Rの右側パイロットポートに作用させる。
操作圧センサ29RAは、操作者による右操作レバー26Rに対する前後方向への操作の内容を圧力の形で検出し、検出した値をコントローラ30に対して出力する。
比例弁31BLは、コントローラ30が出力する制御指令(電流指令)に応じて動作する。そして、パイロットポンプ15から比例弁31BL及びシャトル弁32BLを介して制御弁175Lの右側パイロットポート及び制御弁175Rの左側パイロットポートに導入される作動油によるパイロット圧を調整する。比例弁31BRは、コントローラ30が出力する制御指令(電流指令)に応じて動作する。そして、パイロットポンプ15から比例弁31BR及びシャトル弁32BRを介して制御弁175Lの左側パイロットポート及び制御弁175Rの右側パイロットポートに導入される作動油によるパイロット圧を調整する。比例弁31BL、31BRは、制御弁175L、175Rを任意の弁位置で停止できるようにパイロット圧を調整可能である。
この構成により、コントローラ30は、操作者によるブーム上げ操作とは無関係に、パイロットポンプ15が吐出する作動油を、比例弁31BL及びシャトル弁32BLを介し、制御弁175Lの右側パイロットポート及び制御弁175Rの左側パイロットポートに供給できる。すなわち、ブーム4を上げることができる。また、コントローラ30は、操作者によるブーム下げ操作とは無関係に、パイロットポンプ15が吐出する作動油を、比例弁31BR及びシャトル弁32BRを介し、制御弁175Rの右側パイロットポートに供給できる。すなわち、ブーム4を下げることができる。
また、図6Cに示されるように、右操作レバー26Rは、バケット6を操作するためにも用いられる。具体的には、右操作レバー26Rは、パイロットポンプ15が吐出する作動油を利用し、左右方向への操作に応じたパイロット圧を制御弁174のパイロットポートに作用させる。より具体的には、右操作レバー26Rは、バケット閉じ方向(左方向)に操作された場合に、操作量に応じたパイロット圧を制御弁174の左側パイロットポートに作用させる。また、右操作レバー26Rは、バケット開き方向(右方向)に操作された場合には、操作量に応じたパイロット圧を制御弁174の右側パイロットポートに作用させる。
操作圧センサ29RBは、操作者による右操作レバー26Rに対する左右方向への操作の内容を圧力の形で検出し、検出した値をコントローラ30に対して出力する。
比例弁31CLは、コントローラ30が出力する制御指令(電流指令)に応じて動作する。そして、パイロットポンプ15から比例弁31CL及びシャトル弁32CLを介して制御弁174の左側パイロットポートに導入される作動油によるパイロット圧を調整する。比例弁31CRは、コントローラ30が出力する制御指令(電流指令)に応じて動作する。そして、パイロットポンプ15から比例弁31CR及びシャトル弁32CRを介して制御弁174の右側パイロットポートに導入される作動油によるパイロット圧を調整する。比例弁31CL、31CRは、制御弁174を任意の弁位置で停止できるようにパイロット圧を調整可能である。
この構成により、コントローラ30は、操作者によるバケット閉じ操作とは無関係に、パイロットポンプ15が吐出する作動油を、比例弁31CL及びシャトル弁32CLを介し、制御弁174の左側パイロットポートに供給できる。すなわち、バケット6を閉じることができる。また、コントローラ30は、操作者によるバケット開き操作とは無関係に、パイロットポンプ15が吐出する作動油を、比例弁31CR及びシャトル弁32CRを介し、制御弁174の右側パイロットポートに供給できる。すなわち、バケット6を開くことができる。
また、図6Dに示されるように、左操作レバー26Lは、旋回機構2を操作するためにも用いられる。具体的には、左操作レバー26Lは、パイロットポンプ15が吐出する作動油を利用し、左右方向への操作に応じたパイロット圧を制御弁173のパイロットポートに作用させる。より具体的には、左操作レバー26Lは、左旋回方向(左方向)に操作された場合に、操作量に応じたパイロット圧を制御弁173の左側パイロットポートに作用させる。また、左操作レバー26Lは、右旋回方向(右方向)に操作された場合には、操作量に応じたパイロット圧を制御弁173の右側パイロットポートに作用させる。
操作圧センサ29LBは、操作者による左操作レバー26Lに対する左右方向への操作の内容を圧力の形で検出し、検出した値をコントローラ30に対して出力する。
比例弁31DLは、コントローラ30が出力する制御指令(電流指令)に応じて動作する。そして、パイロットポンプ15から比例弁31DL及びシャトル弁32DLを介して制御弁173の左側パイロットポートに導入される作動油によるパイロット圧を調整する。比例弁31DRは、コントローラ30が出力する制御指令(電流指令)に応じて動作する。そして、パイロットポンプ15から比例弁31DR及びシャトル弁32DRを介して制御弁173の右側パイロットポートに導入される作動油によるパイロット圧を調整する。比例弁31DL、31DRは、制御弁173を任意の弁位置で停止できるようにパイロット圧を調整可能である。
この構成により、コントローラ30は、操作者による左旋回操作とは無関係に、パイロットポンプ15が吐出する作動油を、比例弁31DL及びシャトル弁32DLを介し、制御弁173の左側パイロットポートに供給できる。すなわち、旋回機構2を左旋回させることができる。また、コントローラ30は、操作者による右旋回操作とは無関係に、パイロットポンプ15が吐出する作動油を、比例弁31DR及びシャトル弁32DRを介し、制御弁173の右側パイロットポートに供給できる。すなわち、旋回機構2を右旋回させることができる。
ショベル100は、下部走行体1を自動的又は自律的に前進・後進させる構成を備えていてもよい。この場合、左走行油圧モータ2MLの操作に関する油圧システム部分、及び右走行油圧モータ2MRの操作に関する油圧システム部分は、ブームシリンダ7の操作に関する油圧システム部分等と同じように構成されてもよい。
また、操作装置26の形態として油圧式パイロット回路を備えた油圧式操作レバーに関する説明を記載したが、油圧式操作レバーではなく電気式パイロット回路を備えた電気式操作レバーが採用されてもよい。この場合、電気式操作レバーのレバー操作量は、電気信号としてコントローラ30へ入力される。また、パイロットポンプ15と各制御弁のパイロットポートとの間には電磁弁が配置される。電磁弁は、コントローラ30からの電気信号に応じて動作するように構成される。この構成により、電気式操作レバーを用いた手動操作が行われると、コントローラ30は、レバー操作量に対応する電気信号によって電磁弁を制御してパイロット圧を増減させることで各制御弁を移動させることができる。なお、各制御弁は電磁スプール弁で構成されていてもよい。この場合、電磁スプール弁は、電気式操作レバーのレバー操作量に対応するコントローラ30からの電気信号に応じて動作する。
次に、図7を参照し、コントローラ30の構成例について説明する。図7は、コントローラ30の構成例を示す図である。図7では、コントローラ30は、姿勢検出装置、操作装置26、空間認識装置70、向き検出装置71、情報入力装置72、測位装置73、及びスイッチNS等の少なくとも1つが出力する信号を受け、様々な演算を実行し、比例弁31、表示装置D1、及び音声出力装置D2等の少なくとも1つに制御指令を出力する。姿勢検出装置は、ブーム角度センサS1、アーム角度センサS2、バケット角度センサS3、機体傾斜センサS4、及び旋回角速度センサS5を含む。
コントローラ30は、位置算出部30A、軌道取得部30B、及び自律制御部30Cを機能要素として有する。各機能要素は、ハードウェアで構成されていてもよく、ソフトウェアで構成されていてもよい。
位置算出部30Aは、測位対象の位置を算出する。本実施形態では、位置算出部30Aは、アタッチメントの所定部位の基準座標系における座標点を算出する。所定部位は、例えば、バケット6の爪先である。基準座標系の原点は、例えば、旋回軸とショベル100の接地面との交点である。基準座標系は、例えば、XYZ直交座標系であり、ショベル100の前後軸に平行なX軸と、ショベル100の左右軸に平行なY軸と、ショベル100の旋回軸に平行なZ軸とを有する。位置算出部30Aは、例えば、ブーム4、アーム5、及びバケット6のそれぞれの回動角度からバケット6の爪先の座標点を算出する。位置算出部30Aは、バケット6の爪先の中央の座標点だけでなく、バケット6の爪先の左端の座標点、及びバケット6の爪先の右端の座標点を算出してもよい。この場合、位置算出部30Aは、機体傾斜センサS4の出力を利用してもよい。また、位置算出部30Aは、測位装置73の出力を利用し、アタッチメントの所定部位の世界座標系における座標点を算出してもよい。
軌道取得部30Bは、ショベル100を自律的に動作させるときにアタッチメントの所定部位が辿る軌道である目標軌道を取得する。本実施形態では、軌道取得部30Bは、自律制御部30Cがショベル100を自律的に動作させるときに利用する目標軌道を取得する。具体的には、軌道取得部30Bは、不揮発性記憶装置に記憶されている目標面に関するデータ(以下「設計データ」とする。)に基づいて目標軌道を導き出す。軌道取得部30Bは、空間認識装置70が認識したショベル100の周囲の地形に関する情報に基づいて目標軌道を導き出してもよい。或いは、軌道取得部30Bは、揮発性記憶装置に記憶されている姿勢検出装置の過去の出力からバケット6の爪先の過去の軌跡に関する情報を導き出し、その情報に基づいて目標軌道を導き出してもよい。或いは、軌道取得部30Bは、アタッチメントの所定部位の現在位置と設計データとに基づいて目標軌道を導き出してもよい。
自律制御部30Cは、ショベル100を自律的に動作させる。本実施形態では、所定の開始条件が満たされた場合に、軌道取得部30Bが取得した目標軌道に沿ってアタッチメントの所定部位を移動させる。具体的には、スイッチNSが押されている状態で操作装置26が操作されたときに、所定部位が目標軌道に沿って移動するように、ショベル100を自律的に動作させる。
本実施形態では、自律制御部30Cは、アクチュエータを自律的に動作させることで操作者によるショベルの手動操作を支援する。例えば、自律制御部30Cは、操作者がスイッチNSを押しながら手動でアーム閉じ操作を行っている場合に、目標軌道とバケット6の爪先の位置とが一致するようにブームシリンダ7、アームシリンダ8、及びバケットシリンダ9の少なくとも1つを自律的に伸縮させてもよい。この場合、操作者は、例えば、左操作レバー26Lをアーム閉じ方向に操作するだけで、バケット6の爪先を目標軌道に一致させながら、アーム5を閉じることができる。この例では、主な操作対象であるアームシリンダ8は「主要アクチュエータ」と称される。また、主要アクチュエータの動きに応じて動く従動的な操作対象であるブームシリンダ7及びバケットシリンダ9は「従属アクチュエータ」と称される。
本実施形態では、自律制御部30Cは、比例弁31に制御指令(電流指令)を与えて各アクチュエータに対応する制御弁に作用するパイロット圧を個別に調整することで各アクチュエータを自律的に動作させることができる。例えば、右操作レバー26Rが傾倒されたか否かに関わらず、ブームシリンダ7及びバケットシリンダ9の少なくとも1つを動作させることができる。
次に、図8を参照し、コントローラ30が事前に取得されたバケット形状に応じたバケット6の形状パラメータを設定する処理の第1実施例として、バケット6の形状を示すバケット形状が選択された場合に、コントローラ30が、選択されたバケット形状に応じてバケット6の形状パラメータを変更する処理について説明する。図8は、表示装置D1に表示される表示画面41Vの構成例を示す図である。
図8に示されるように、表示画面41Vは、各種の運転情報と空間認識装置70によって撮像された撮像画像とを含む状態表示領域41V1と、バケット形状と該バケット形状と関連付けられた形状パラメータとを含むバケット選択領域41V2と、を有する。
状態表示領域41V1は、それぞれ運転情報を表示する日時表示領域41a、走行モード表示領域41b、アタッチメント表示領域41c、エンジン制御状態表示領域41e、エンジン稼働時間表示領域41f、冷却水温表示領域41g、燃料残量表示領域41h、回転数モード表示領域41i、尿素水残量表示領域41j、及び作動油温表示領域41kを含む。また、状態表示領域41V1は、空間認識装置70によって撮像された撮像画像を表示するカメラ画像表示領域41mを含む。
日時表示領域41aは、現在の日時を表示する領域である。図8に示す例では、デジタル表示が採用され、日付(2014年4月1日)及び時刻(10時5分)が示されている。
走行モード表示領域41bは、現在の走行モードを表示する領域である。走行モードは、可変容量ポンプを用いた走行油圧モータの設定状態を表す。具体的には、走行モードは、低速モード及び高速モードを有し、低速モードでは「亀」を象ったマークが表示され、高速モードでは「兎」を象ったマークが表示される。図8に示す例では、「亀」を象ったマークが表示されており、運転者は低速モードが設定されていることを認識できる。
アタッチメント表示領域41cは、現在装着されているアタッチメントを表す画像を表示する領域である。ショベル100には、バケット、削岩機、グラップル、リフティングマグネット等の様々なアタッチメントが装着される。アタッチメント表示領域41cは、例えば、これらのアタッチメントを象ったマーク及びアタッチメントに対応する番号を表示する。図8に示す例では、削岩機を象ったマークが表示され、且つ削岩機の出力の大きさを示す数字として「1」が表示されている。
エンジン制御状態表示領域41eは、エンジン11の制御状態を表示する領域である。図8に示す例では、運転者は、エンジン11の制御状態として「自動減速・自動停止モード」が選択されていることを認識できる。なお、「自動減速・自動停止モード」は、エンジン負荷が小さい状態の継続時間に応じて、エンジン回転数を自動的に低減し、さらにはエンジン11を自動的に停止させる制御状態を意味する。その他、エンジン11の制御状態には、「自動減速モード」、「自動停止モード」、「手動減速モード」等がある。
エンジン稼働時間表示領域41fは、エンジン11の累積稼働時間を表示する領域である。図8に示す例では、運転者によりカウントがリスタートされてからの稼働時間の累積が、単位「hr(時間)」と共に表示されている。エンジン稼働時間表示領域41fには、ショベル100が製造されてから全期間の生涯稼働時間及び運転者によりカウントがリスタートされてからの区間稼働時間の少なくとも一方が表示される。
冷却水温表示領域41gは、現在のエンジン冷却水の温度状態を表示する領域である。図8に示す例では、エンジン冷却水の温度状態を表すバーグラフが表示されている。なお、エンジン冷却水の温度は、エンジン11に取り付けられる水温センサが出力するデータに基づいて表示される。
燃料残量表示領域41hは、燃料タンクに貯蔵されている燃料の残量状態を表示する領域である。図8に示す例では、現在の燃料の残量状態を表すバーグラフが表示されている。なお、燃料の残量は、燃料残量センサが出力するデータに基づいて表示される。
回転数モード表示領域41iは、エンジン回転数調整ダイヤルによって設定された現在の回転数モードを画像表示する領域である。回転数モードは、例えば、上述のSPモード、Hモード、Aモード、及びアイドリングモードの4つを含む。図8に示す例では、SPモードを表す記号「SP」が表示されている。
尿素水残量表示領域41jは、尿素水タンクに貯蔵されている尿素水の残量状態を画像表示する領域である。図8に示す例では、現在の尿素水の残量状態を表すバーグラフが表示されている。なお、尿素水の残量は、尿素水タンクに設けられている尿素水残量センサが出力するデータに基づいて表示される。
作動油温表示領域41kは、作動油タンク内の作動油の温度状態を表示する領域である。図8に示す例では、作動油の温度状態を表すバーグラフが表示されている。なお、作動油の温度は、油温センサが出力するデータに基づいて表示される。
また、図8に示す例では、冷却水温表示領域41g、燃料残量表示領域41h、尿素水残量表示領域41j、及び作動油温表示領域41kが、状態表示領域41V1の上側に設けられている。ただし、冷却水温表示領域41g、燃料残量表示領域41h、尿素水残量表示領域41j、及び作動油温表示領域41kは、同じ1つの所定円の円周方向に沿って伸縮するように設けられていてもよい。この場合、冷却水温表示領域41g、燃料残量表示領域41h、尿素水残量表示領域41j、及び作動油温表示領域41kは、それぞれ所定円の左側、上側、下側、及び右側の部分に配置される。また、冷却水温表示領域41g、燃料残量表示領域41h、尿素水残量表示領域41j、及び作動油温表示領域41kでは、バーグラフ表示の代わりに針表示が採用されてもよい。
なお、図8に示す例では、運転情報を示す冷却水温表示領域41g、燃料残量表示領域41h、尿素水残量表示領域41j、作動油温表示領域41k等が、主に状態表示領域41V1の上側領域に表示されているが、これに限定されない。運転情報は、状態表示領域41V1の左側領域、右側領域等に表示されてもよい。ただし、運転者にとって確認し易くなるように、運転情報は状態表示領域41V1において運転席に近い側(本実施形態では上側領域)、もしくは左側領域に表示されることが好ましい。
カメラ画像表示領域41mは、空間認識装置70によって撮像された撮像画像を表示する領域である。図8に示す例では、カメラ画像表示領域41mには、後方センサ70Bによって撮像された撮像画像が表示されている。ただし、カメラ画像表示領域41mには、左方センサ70L又は右方センサ70Rによって撮像された撮像画像が表示されてもよい。また、カメラ画像表示領域41mには、後方センサ70B、左方センサ70L、及び右方センサ70Rのうち複数のセンサによって撮像された撮像画像が並ぶように表示されてもよい。さらに、カメラ画像表示領域41mには、後方センサ70B、左方センサ70L、及び右方センサ70Rによってそれぞれ撮像された撮像画像が合成された俯瞰画像が表示されてもよい。
なお、各カメラは、撮影される画像データに、上部旋回体3のカバー3aの一部が含まれるように設置されている。表示される画像にカバー3aの一部が含まれることで、運転者は、カメラ画像表示領域41mに表示される物体とショベル100との間の距離感を把握し易くなる。
カメラ画像表示領域41mには、表示中の撮像画像を撮像した空間認識装置70の向きを表す撮像装置アイコン41nが表示されている。撮像装置アイコン41nは、ショベル100の上面視の形状を表すショベルアイコン41naと、表示中の撮像画像を撮像した空間認識装置70の向きを表す帯状の方向表示アイコン41nbとで構成されている。
図8に示す例では、ショベルアイコン41naの下側(アタッチメントの反対側)に方向表示アイコン41nbが表示されており、カメラ画像表示領域41mに後方センサ70Bによって撮像されたショベル100の後方の撮像画像が表示されている。例えばカメラ画像表示領域41mに右方センサ70Rによって撮像された撮像画像が表示されている場合には、ショベルアイコン41naの右側に方向表示アイコン41nbが表示される。また、例えばカメラ画像表示領域41mに左方センサ70Lによって撮像された撮像画像が表示されている場合には、ショベルアイコン41naの左側に方向表示アイコン41nbが表示される。
また、カメラ画像表示領域41mには、空間認識装置70によって検出された人の画像GPが表示され、且つ、画像GPで表される人の足下を中心とした強調表示である画像FRが表示されている。図8の例では、画像FRは、画像GPで表される人の足下を囲む枠の画像である。また、空間認識装置70がショベル100から予め設定された範囲内に所定物体を検出した場合、表示装置D1を利用し、ショベル100の作業に携わる人に、所定物体を検出した旨を知らせるように構成されている。
バケット選択領域41V2は、バケット形状表示領域41p、形状パラメータ表示領域41qを含む。
バケット形状表示領域41pは、バケット形状の一例である、バケット6を象ったマーク(以下「バケット画像」という。)を表示する領域である。バケット形状表示領域41pは、例えば、操作者によるタッチ操作を検出可能な検出面を有する。図8に示す例では、左側から順に、通常バケットを象ったバケット画像、法面バケットを象ったバケット画像、溝掘りバケットを象ったバケット画像、及びスケルトンバケットを象ったバケット画像が表示されている。また、バケット形状表示領域41pには、バケット画像と共に、バケット6の種類を表す文字(以下「バケット識別文字」という。)が表示されていてもよい。図8に示す例では、通常バケットを象ったバケット画像の上側に、通常バケットを表す文字「通常」が表示され、法面バケットを象ったバケット画像の上側に文字「法面」が表示されている。また、溝掘りバケットを象ったバケット画像の上側に文字「溝掘り」が表示され、スケルトンバケットを象ったバケット画像の上側に文字「スケルトン」が表示されている。このようにバケット形状表示領域41pにバケット画像に加えてバケット6の種類を表す文字が表示されていることにより、操作者は容易にバケット6の種類を確認してタッチ操作できる。なお、バケット形状表示領域41pに表示されるバケット画像及びバケット識別文字の数は図8に示される4つに限定されるものではなく、3つ以下であってもよく、5つ以上であってもよい。バケット画像及びバケット識別文字の数が多い場合には、操作者の操作に応じてバケット画像及びバケット識別文字がスクロールして表示される構成であってもよい。
形状パラメータ表示領域41qは、バケット形状表示領域41pに表示されるバケット画像と関連付けられたバケット6の形状に関するパラメータ(以下「形状パラメータ」という。)を表示する領域である。図8に示す例では、形状パラメータとして、ピン径、アーム先端幅、バケット幅、ピン-爪先距離、ピン-背面距離及びバケット背面角度が表示されている。このように、バケット画像と対応して形状パラメータが表示されているので、操作者はバケット画像と共に該バケット画像に対応する形状パラメータを確認してバケット交換時の設定変更を実行できる。
このように実施例1では、操作者により、バケット選択領域41V2に表示された複数のバケット画像のうちの何れかが選択されると、コントローラ30は、選択されたバケット画像と関連付けされた形状パラメータを新たな形状パラメータとして登録する。そのため、操作者は、バケット交換時にバケット選択領域41V2に表示されたバケット形状を選択すればよく、バケット6に対応する形状パラメータ(例えば、ピン径、アーム先端幅、バケット幅、ピン-爪先距離、ピン-背面距離、バケット背面角度)を直接入力する必要がない。その結果、バケット交換時の設定変更を容易に実行できる。
次に、図9を参照し、コントローラ30が事前に取得されたバケット形状に応じたバケット6の形状パラメータを設定する処理の第2実施例として、コントローラ30が、空間認識装置70により撮像されるバケット画像に応じてバケット6の形状パラメータを変更する処理について説明する。図9は、キャビン10の上面前端に取り付けられた前方センサ70Fにより撮像されたバケット画像を示す図である。
図9に示されるように、前方センサ70Fによりショベル100の前方が撮像されると、バケット6の正面と側面とを含むバケット画像が得られる。
コントローラ30は、前方センサ70Fにより撮像されたバケット画像と、予め登録されたバケット6の種類と形状パラメータとが関連付けされた関連情報と、に基づいて、形状パラメータを変更する。具体的には、コントローラ30は、前方センサ70Fにより撮像されたバケット画像に基づいて、既知の画像認識技術を用いて、バケット6の種類を特定する。そして、コントローラ30は、特定したバケット6の種類と、予め登録されたバケット6の種類と形状パラメータとが関連付けされた関連情報と、に基づいて、特定したバケット6の種類に対応する形状パラメータを取得し、新たな形状パラメータとして登録する。
このように、実施例2では、前方センサ70Fによりショベル100の前方が撮像されると、コントローラ30は、撮像されたバケット画像と、バケット6の種類と形状パラメータとが関連付けされた関連情報とに基づいて、形状パラメータを変更する。そのため、操作者は、バケット交換時にバケット6を含むショベル100の前方の画像を撮像すればよく、バケット6に対応する形状パラメータを直接入力する必要がない。その結果、バケット交換時の設定変更を容易に実行できる。
次に、図9を参照し、コントローラ30が事前に取得されたバケット形状に応じたバケット6の形状パラメータを設定する処理の第3実施例として、コントローラ30が、空間認識装置70により撮像されるバケット画像に応じてバケット6の形状パラメータを変更する処理の別の例について説明する。
図9に示されるように、前方センサ70Fによりショベル100の前方が撮像されると、バケット6の正面と側面とを含むバケット画像が得られる。
コントローラ30は、前方センサ70Fにより撮像されたバケット画像に基づいて、形状パラメータを変更する。具体的には、まず、コントローラ30は、バケット画像に基づいて、バケット連結ピンの中心軸901を検出する。続いて、コントローラ30は、バケット幅902及びアーム先端幅903を測定する。続いて、コントローラ30は、バケット連結ピンの中心軸901上のバケット6側面の位置904を検出する。続いて、コントローラ30は、バケット連結ピンの中心軸901上のバケット6側面の位置904からバケット6の爪先までの距離905及びバケット6の背面までの距離906を測定する。続いて、コントローラ30は、測定したアーム先端幅903と予め登録されたショベル100のアーム5のアーム先端幅との寸法比に基づいて、形状パラメータを算出する。例えば、コントローラ30は、上記寸法比と、測定したバケット連結ピンの中心軸901上のバケット6側面の位置904からバケット6の爪先までの距離905と、に基づいて、ピン-爪先距離を算出する。また、例えば、コントローラ30は、上記寸法比と、測定したバケット連結ピンの中心軸901上のバケット6側面の位置904からバケット6の背面までの距離906と、に基づいて、ピン-背面距離を算出する。続いて、コントローラ30は、算出した形状パラメータを、新たな形状パラメータとして登録する。また、コントローラ30は、バケット画像に基づいて、バケット背面角度θ5、θ6の少なくともいずれかを測定してもよい。
このように、実施例3では、前方センサ70Fによりショベル100の前方が撮像されると、コントローラ30は、撮像されたバケット6の正面と側面とを含むバケット画像に基づいて、形状パラメータを変更する。そのため、操作者は、バケット交換時に前方センサ70Fを用いてバケット6の正面と側面とを含むショベル100の前方の画像を撮像すればよく、バケット6に対応する形状パラメータを直接入力する必要がない。その結果、バケット交換時の設定変更を容易に実行できる。
次に、図10A及び図10Bを参照し、コントローラ30が事前に取得されたバケット形状に応じたバケット6の形状パラメータを設定する処理の第4実施例として、コントローラ30が、作業支援装置200により撮像されるバケット画像に応じてバケット6の形状パラメータを変更する処理について説明する。図10A及び図10Bは、作業支援装置200の表示画面の一例を示す図である。図10Aは作業支援装置200によりバケット6を撮像するときの撮影画面200V1を示し、図10Bは撮像されたバケット6の形状パラメータを表示する測定完了画面200V2を示す。
図10Aに示されるように、撮影画面200V1は、カメラ画像表示領域200aを含む。そして、作業支援装置200にも支援装置用空間認識装置が備えられている。これにより、ショベルの空間認識装置70と同様に、支援装置用空間認識装置は、作業支援装置200の周囲の三次元空間に存在する物体を認識するように構成されている。また、支援装置用空間認識装置は、支援装置用空間認識装置又は作業支援装置200から認識された物体(例えばバケット6)までの距離を算出するように構成されていてもよい。支援装置用空間認識装置は、例えば、超音波センサ、ミリ波レーダ、単眼カメラ、ステレオカメラ、LIDAR、距離画像センサ、赤外線センサ等、又はそれらの任意の組み合わせを含む。また、撮影画面200V1には、例えば支援装置用空間認識装置の操作に用いられる操作部200fが表示されている。図10Aの例では、操作部200fは、シャッタのアイコンである。
カメラ画像表示領域200aは、作業支援装置200によって撮像された撮像画像を表示する領域である。図10Aに示す例では、カメラ画像表示領域200aには、作業支援装置200によって撮像されたバケット6の正面の画像が表示されている。
図10Bに示されるように、測定完了画面200V2は、撮像画像表示領域200b、バケット認識結果表示領域200c、形状パラメータ表示領域200d、選択ボタン表示領域200e及び機体識別情報表示領域200gを含む。
撮像画像表示領域200bは、作業支援装置200によって撮像されたバケット6の撮像画像を表示する領域である。図10Bに示す例では、撮像画像表示領域200bには、作業支援装置200によって撮像されたバケット6の正面及び側面のバケット画像が上下に並ぶように表示されている。また、撮像画像表示領域200bには、バケット6の正面及び側面のバケット画像に重畳して、後述する形状パラメータ表示領域200dに表示される形状パラメータの位置を特定する寸法線が表示されている。図10Bに示す例では、撮像画像表示領域200bには、バケット6の正面のバケット画像に重畳してアーム先端幅を特定する寸法線200b1が表示されている。また、撮像画像表示領域200bには、バケット6の側面のバケット画像に重畳してピン-爪先距離を特定する寸法線200b2及びピン-背面距離を特定する寸法線200b3が表示されている。
バケット認識結果表示領域200cは、作業支援装置200によって撮像されたバケット6の種類を表示する領域である。図10Bに示す例では、バケット認識結果表示領域200cには、バケット6の種類が法面バケットであることを表す「認識結果:法面バケット」が表示されている。作業支援装置200は、例えば、撮像されたバケット6の正面及び側面のバケット画像に基づいて、既知の画像認識技術を用いて、バケット6の種類を特定する。撮像した画像を利用するだけでなく、支援装置用空間認識装置としてミリ波レーダ、超音波センサ、又はレーザレーダ等を利用する場合には、多数の信号(レーザ光等)を物体に発信し、その反射信号を受信することで、反射信号から物体の距離及び方向を検出してもよい。
形状パラメータ表示領域200dは、バケット認識結果表示領域200cに表示されたバケット6の種類に対応する形状パラメータを表示する領域である。図10Bに示す例では、形状パラメータとして、法面バケットに対応するピン径、アーム先端幅、バケット幅、ピン-爪先距離、ピン-背面距離及びバケット背面角度が表示されている。このように、エンドアタッチメントの形状に関する特徴を入力し、自動的に測定すべき部位を認識することで、予め設定された部位間の寸法を測定する。また、他の測定方法として、作業者が撮像画像の2箇所をタップすることで測定してもよい。この場合、まず、作業者が撮像画像に対して2箇所をタップすることで寸法線の端部位置を認識する。そして、認識した両端を結ぶ寸法線を特定することにより寸法線の長さを算出できる。その後、撮像した画像形状と寸法とを対応付けを行い、対応付けた結果をショベルへ送信する。更に他の測定方法として、測定すべき寸法を順番にガイダンス表示してもよい。具体的には、アーム先端幅を測定したい場合、「ステップ1(アーム先端幅測定)、アーム先端の両端をタップして下さい」等のガイダンスを順番に表示することで、測定すべき寸法の両端を作業者に正確にタップさせる。これにより、バケット6の形状パラメータを取得することができる。
選択ボタン表示領域200eは、形状パラメータ表示領域200dに表示された形状パラメータを、新たな形状パラメータとして登録するか否かを選択する選択ボタンを表示する領域である。選択ボタン表示領域200eは、例えば、操作者によるタッチ操作を検出可能な検出面を有する。図10Bに示す例では、選択ボタン表示領域200eは、登録ボタンと再撮影ボタンとが表示されている。登録ボタンは、例えば、形状パラメータ表示領域200dに表示された形状パラメータを新たな形状パラメータとして登録することを表すボタン「O.K 送信します」である。再撮影ボタンは、例えば、形状パラメータ表示領域200dに表示された形状パラメータを新たな形状パラメータとして登録することなく、撮像をやり直すことを表すボタン「N.G 撮影し直し」である。操作者により選択ボタン表示領域200eのボタン「O.K 送信します」が操作されると、作業支援装置200は、形状パラメータ表示領域200dに表示された形状パラメータを、新たな形状パラメータとして登録する。一方、操作者により選択ボタン表示領域200eのボタン「N.G 撮影し直し」が操作されると、作業支援装置200は、撮影画面200V1を表示する。
機体識別情報表示領域200gは、作業支援装置200を識別する情報、例えば作業支援装置200ごとに割り振られる識別番号を表示する領域である。図10Bに示す例では、機体識別情報表示領域200gには、作業支援装置200の識別番号が「**」であることを表す「通信機体:**」が表示されている。
このように、実施例4では、作業支援装置200によりショベル100のバケット6の正面及び側面が撮像されると、作業支援装置200は、撮像されたバケット6の正面及び側面のバケット画像に基づいて、形状パラメータを変更する。そのため、操作者は、バケット交換時に作業支援装置200を用いてバケット6の正面及び側面のバケット画像を撮像すればよく、バケット6に対応する形状パラメータを直接入力する必要がない。その結果、バケット交換時の設定変更を容易に実行できる。
次に、図11を参照し、撮像画像からバケット6の寸法を算出する処理の一例として、学習済みモデルを用いる場合について説明する。図11は、撮像画像からバケット6の寸法を算出する処理の一例を示す図である。
コントローラ30は、不揮発性記憶装置に記憶される、機械学習が行われた学習済みモデルLMを用いて、空間認識装置70の撮像画像に基づき、バケット6の寸法を算出する。ただし、撮像画像は、作業支援装置200の支援装置用空間認識装置の撮像画像であってよい。
例えば、図11に示すように、学習済みモデルLMは、ニューラルネットワーク(Neural Network)401を中心に構成される。
本例では、ニューラルネットワーク401は、入力層及び出力層の間に一層以上の中間層(隠れ層)を有する、いわゆるディープニューラルネットワークである。ニューラルネットワーク401では、それぞれの中間層を構成する複数のニューロンごとに、下位層との間の接続強度を表す重みづけパラメータが規定されている。そして、各層のニューロンは、上位層の複数のニューロンからの入力値のそれぞれに上位層のニューロンごとに規定される重み付けパラメータを乗じた値の総和を、閾値関数を通じて、下位層のニューロンに出力する態様で、ニューラルネットワーク401が構成される。ニューラルネットワーク401を対象とし、管理装置300により機械学習、具体的には、深層学習(ディープラーニング:Deep Learning)が行われ、上述の重み付けパラメータの最適化が図られる。
これにより、例えば、図11に示すように、ニューラルネットワーク401は、入力信号xとして空間認識装置70の撮像画像が入力され、出力信号yとして、撮像画像上で検出されているバケット形状の複数の特徴点(バケット6の各部位の位置)を出力することができる。本例では、ニューラルネットワーク401は、ピン中心の位置、爪先の位置、ピン左端の位置、ピン右端の位置のそれぞれに対応する出力信号y1~y4が出力される。出力信号y1は、位置座標として東経e1、北緯n1、高度h1を含む。出力信号y2は、位置座標として東経e2、北緯n2、高度h2を含む。出力信号y3は、位置座標として東経e3、北緯n3、高度h3を含む。出力信号y4は、位置座標として東経e4、北緯n4、高度h4を含む。これにより、コントローラ30は、ニューラルネットワーク401が出力するバケット6の各部位の位置、すなわち、ピン中心の位置、爪先の位置、ピン左端の位置、ピン右端の位置と、空間認識装置70が算出する空間認識装置70からバケット6までの距離情報と、に基づき、ピン径、アーム先端幅、バケット幅、ピン-爪先距離、ピン-背面距離、バケット背面角度等のバケット6の形状パラメータを算出することができる。
ニューラルネットワーク401は、例えば、畳み込みニューラルネットワーク(CNN:Convolutional Neural Network)である。CNNは、既存の画像処理技術(畳み込み処理及びプーリング処理)を適用したニューラルネットワークである。具体的には、CNNは、空間認識装置70の撮像画像に対する畳み込み処理及びプーリング処理の組み合わせを繰り返すことにより撮像画像よりもサイズの小さい特徴量データ(特徴マップ)を取り出す。そして、取り出した特徴マップの各画素の画素値が複数の全結合層により構成されるニューラルネットワークに入力され、ニューラルネットワークの出力層は、例えば、撮像画像上で検出されているバケット6の各部位の位置を出力することができる。
なお、学習済みモデルLMとしては、ニューラルネットワーク401以外にサポートベクターマシーン(Support Vector Machine:SVM)等を適用してもよい。
次に、図12及び図13を参照し、コントローラ30がアタッチメントの動きを自律的に制御する機能(以下「自律制御機能」とする。)の一例について説明する。図12は、自律制御機能の構成例を示すブロック図である。
コントローラ30は、自律制御の実行に関する機能要素Fa~Fc及びF0~F6を有する。機能要素は、ソフトウェアで構成されていてもよく、ハードウェアで構成されていてもよく、ソフトウェアとハードウェアの組み合わせで構成されていてもよい。
機能要素Faは、排土開始位置を算出するように構成されている。本実施形態では、機能要素Faは、空間認識装置70が出力する物体データに基づき、排土動作が実際に開始される前に、排土動作を開始させるときのバケット6の位置を排土開始位置として算出する。具体的には、機能要素Faは、空間認識装置70が出力する物体データに基づき、ダンプトラックDTの荷台に既に積み込まれている土砂の状態を検出する。土砂の状態は、例えば、ダンプトラックDTの荷台のどの部分に土砂が積み込まれているか等である。そして、機能要素Faは、検出した土砂の状態に基づいて排土開始位置を算出する。但し、機能要素Faは、撮像装置80の出力に基づいて排土開始位置を算出してもよい。或いは、機能要素Faは、過去の排土動作が行われたときに不揮発性記憶装置に記録したショベル100の姿勢に基づいて排土開始位置を算出してもよい。或いは、機能要素Faは、姿勢検出装置の出力に基づいて排土開始位置を算出してもよい。この場合、機能要素Faは、例えば、排土動作が実際に開始される前に、掘削アタッチメントの現在の姿勢に基づき、排土動作を開始させるときのバケット6の位置を排土開始位置として算出してもよい。
機能要素Fbは、ダンプトラック位置を算出するように構成されている。本実施形態では、機能要素Fbは、空間認識装置70が出力する物体データに基づき、ダンプトラックDTの荷台を構成する各部の位置をダンプトラック位置として算出する。
機能要素Fcは、掘削終了位置を算出するように構成されている。本実施形態では、機能要素Fcは、直近の掘削動作を終了させたときのバケット6の爪先位置に基づき、掘削動作を終了させたときのバケット6の位置を掘削終了位置として算出する。具体的には、機能要素Fcは、後述の機能要素F2によって算出される現在のバケット6の爪先位置に基づいて掘削終了位置を算出する。また、機能要素Fcは、掘削終了位置を算出する際に、後述の機能要素F2によって算出される現在のバケット背面角度、バケット背面位置を利用してもよい。
機能要素F0は、バケットパラメータを設定するように構成されている。本実施形態では、機能要素F0は、空間認識装置70が出力する物体データに基づいて、バケットパラメータを設定する。バケットパラメータは、例えば、ピン中心の位置、爪先の位置、ピン左端の位置、ピン右端の位置等、バケットの位置に関する情報である。
機能要素F1は、目標軌道を生成するように構成されている。本実施形態では、機能要素F1は、空間認識装置70が出力する物体データと、機能要素Fcが算出した掘削終了位置とに基づいてバケット6の爪先が辿るべき軌道を目標軌道として生成する。物体データは、例えば、ダンプトラックDTの位置及び形状等、ショベル100の周囲に存在する物体に関する情報である。具体的には、機能要素F1は、機能要素Faが算出した排土開始位置と、機能要素Fbが算出したダンプトラック位置と、機能要素Fcが算出した掘削終了位置とに基づいて目標軌道を算出する。また、機能要素F1は、目標軌道を算出する際に、機能要素F0が設定したバケットパラメータの出力を利用してもよい。
機能要素F2は、現在の爪先位置を算出するように構成されている。本実施形態では、機能要素F2は、ブーム角度センサS1が検出したブーム角度β1と、アーム角度センサS2が検出したアーム角度β2と、バケット角度センサS3が検出したバケット角度β3と、旋回角速度センサS5が検出した旋回角度α1とに基づき、バケット6の爪先の座標点を現在の爪先位置として算出する。機能要素F2は、現在の爪先位置を算出する際に、機体傾斜センサS4の出力を利用してもよい。また、機能要素F2は、現在の爪先位置を算出する際に、機能要素F0の出力を利用してもよい。また、機能要素F2は、爪先位置の算出に加え、バケット背面角度の算出、バケット背面位置の算出を行うように構成されていてもよい。
機能要素F3は、次の爪先位置を算出するように構成されている。本実施形態では、機能要素F3は、操作圧センサ29が出力する操作データと、機能要素F1が生成した目標軌道と、機能要素F2が算出した現在の爪先位置とに基づき、所定時間後の爪先位置を目標爪先位置として算出する。
機能要素F3は、現在の爪先位置と目標軌道との間の乖離が許容範囲内に収まっているか否かを判定してもよい。本実施形態では、機能要素F3は、現在の爪先位置と目標軌道との間の距離が所定値以下であるか否かを判定する。そして、機能要素F3は、その距離が所定値以下である場合、乖離が許容範囲内に収まっていると判定し、目標爪先位置を算出する。一方で、機能要素F3は、その距離が所定値を上回っている場合、乖離が許容範囲内に収まっていないと判定し、レバー操作量とは無関係に、アクチュエータの動きを減速させ或いは停止させるようにする。この構成により、コントローラ30は、爪先位置が目標軌道から逸脱した状態で、自律制御の実行が継続されてしまうのを防止できる。
機能要素F4は、爪先の速度に関する指令値を生成するように構成されている。本実施形態では、機能要素F4は、機能要素F2が算出した現在の爪先位置と、機能要素F3が算出した次の爪先位置とに基づき、所定時間で現在の爪先位置を次の爪先位置に移動させるために必要な爪先の速度を爪先の速度に関する指令値として算出する。
機能要素F5は、爪先の速度に関する指令値を制限するように構成されている。本実施形態では、機能要素F5は、機能要素F2が算出した現在の爪先位置と空間認識装置70の出力とに基づき、爪先とダンプトラックDTとの間の距離が所定値未満であると判定した場合、爪先の速度に関する指令値を所定の上限値で制限する。このようにして、コントローラ30は、爪先がダンプトラックDTに接近したときに爪先の速度を減速させる。
機能要素F6は、アクチュエータを動作させるための指令値を算出するように構成されている。本実施形態では、機能要素F6は、現在の爪先位置を目標爪先位置に移動させるために、機能要素F3が算出した目標爪先位置に基づき、ブーム角度β1に関する指令値β1r、アーム角度β2に関する指令値β2r、バケット角度β3に関する指令値β3r、及び旋回角度α1に関する指令値α1rを算出する。機能要素F6は、ブーム4が操作されていないときであっても、必要に応じて指令値β1rを算出する。これは、ブーム4を自動的に動作させるためである。アーム5、バケット6、及び旋回機構2についても同様である。
次に、図13を参照し、機能要素F6の詳細について説明する。図13は、各種指令値を算出する機能要素F6の構成例を示すブロック図である。
コントローラ30は、図13に示すように、指令値の生成に関する機能要素F11~F13、F21~F23、F31~F33及びF41~F43を更に有する。機能要素は、ソフトウェアで構成されていてもよく、ハードウェアで構成されていてもよく、ソフトウェアとハードウェアの組み合わせで構成されていてもよい。
機能要素F11~F13は、指令値β1rに関する機能要素であり、機能要素F21~F23は、指令値β2rに関する機能要素であり、機能要素F31~F33は、指令値β3rに関する機能要素であり、機能要素F41~F43は、指令値α1rに関する機能要素である。
機能要素F11、F21、F31、及びF41は、比例弁31に対して出力される電流指令を生成するように構成されている。本実施形態では、機能要素F11は、ブーム制御機構31Cに対してブーム電流指令を出力し、機能要素F21は、アーム制御機構31Aに対してアーム電流指令を出力し、機能要素F31は、バケット制御機構31Dに対してバケット電流指令を出力し、機能要素F41は、旋回制御機構31Bに対して旋回電流指令を出力する。
なお、バケット制御機構31Dは、バケットシリンダパイロット圧指令に対応する制御電流に応じたパイロット圧をバケット制御弁としての制御弁174に対して作用させることができるように構成されている。バケット制御機構31Dは、例えば、図6Cにおける比例弁31CL及び比例弁31CRであってもよい。
機能要素F12、F22、F32、及びF42は、スプール弁を構成するスプールの変位量を算出するように構成されている。本実施形態では、機能要素F12は、ブームスプール変位センサS7の出力に基づき、ブームシリンダ7に関する制御弁175を構成するブームスプールの変位量を算出する。機能要素F22は、アームスプール変位センサS8の出力に基づき、アームシリンダ8に関する制御弁176を構成するアームスプールの変位量を算出する。機能要素F32は、バケットスプール変位センサS9の出力に基づき、バケットシリンダ9に関する制御弁174を構成するバケットスプールの変位量を算出する。機能要素F42は、旋回スプール変位センサS2Aの出力に基づき、旋回油圧モータ2Aに関する制御弁173を構成する旋回スプールの変位量を算出する。なお、バケットスプール変位センサS9は、制御弁174を構成するスプールの変位量を検出するセンサである。
機能要素F13、F23、F33、及びF43は、作業体の回動角度を算出するように構成されている。本実施形態では、機能要素F13は、ブーム角度センサS1の出力に基づき、ブーム角度β1を算出する。機能要素F23は、アーム角度センサS2の出力に基づき、アーム角度β2を算出する。機能要素F33は、バケット角度センサS3の出力に基づき、バケット角度β3を算出する。機能要素F43は、旋回角速度センサS5の出力に基づき、旋回角度α1を算出する。
具体的には、機能要素F11は、基本的に、機能要素F6が生成した指令値β1rと機能要素F13が算出したブーム角度β1との差がゼロになるように、ブーム制御機構31Cに対するブーム電流指令を生成する。その際に、機能要素F11は、ブーム電流指令から導き出される目標ブームスプール変位量と機能要素F12が算出したブームスプール変位量との差がゼロになるように、ブーム電流指令を調節する。そして、機能要素F11は、その調節後のブーム電流指令をブーム制御機構31Cに対して出力する。
ブーム制御機構31Cは、ブーム電流指令に応じて開口面積を変化させ、その開口面積の大きさに対応するパイロット圧を制御弁175のパイロットポートに作用させる。制御弁175は、パイロット圧に応じてブームスプールを移動させ、ブームシリンダ7に作動油を流入させる。ブームスプール変位センサS7は、ブームスプールの変位を検出し、その検出結果をコントローラ30の機能要素F12にフィードバックする。ブームシリンダ7は、作動油の流入に応じて伸縮し、ブーム4を上下動させる。ブーム角度センサS1は、上下動するブーム4の回動角度を検出し、その検出結果をコントローラ30の機能要素F13にフィードバックする。機能要素F13は、算出したブーム角度β1を機能要素F4にフィードバックする。
機能要素F21は、基本的に、機能要素F6が生成した指令値β2rと機能要素F23が算出したアーム角度β2との差がゼロになるように、アーム制御機構31Aに対するアーム電流指令を生成する。その際に、機能要素F21は、アーム電流指令から導き出される目標アームスプール変位量と機能要素F22が算出したアームスプール変位量との差がゼロになるように、アーム電流指令を調節する。そして、機能要素F21は、その調節後のアーム電流指令をアーム制御機構31Aに対して出力する。
アーム制御機構31Aは、アーム電流指令に応じて開口面積を変化させ、その開口面積の大きさに対応するパイロット圧を制御弁176のパイロットポートに作用させる。制御弁176は、パイロット圧に応じてアームスプールを移動させ、アームシリンダ8に作動油を流入させる。アームスプール変位センサS8は、アームスプールの変位を検出し、その検出結果をコントローラ30の機能要素F22にフィードバックする。アームシリンダ8は、作動油の流入に応じて伸縮し、アーム5を開閉させる。アーム角度センサS2は、開閉するアーム5の回動角度を検出し、その検出結果をコントローラ30の機能要素F23にフィードバックする。機能要素F23は、算出したアーム角度β2を機能要素F4にフィードバックする。
機能要素F31は、基本的に、機能要素F6が生成した指令値β3rと機能要素F33が算出したバケット角度β3との差がゼロになるように、バケット制御機構31Dに対するバケット電流指令を生成する。その際に、機能要素F31は、バケット電流指令から導き出される目標バケットスプール変位量と機能要素F32が算出したバケットスプール変位量との差がゼロになるように、バケット電流指令を調節する。そして、機能要素F31は、その調節後のバケット電流指令をバケット制御機構31Dに対して出力する。
バケット制御機構31Dは、バケット電流指令に応じて開口面積を変化させ、その開口面積の大きさに対応するパイロット圧を制御弁174のパイロットポートに作用させる。制御弁174は、パイロット圧に応じてバケットスプールを移動させ、バケットシリンダ9に作動油を流入させる。バケットスプール変位センサS9は、バケットスプールの変位を検出し、その検出結果をコントローラ30の機能要素F32にフィードバックする。バケットシリンダ9は、作動油の流入に応じて伸縮し、バケット6を開閉させる。バケット角度センサS3は、開閉するバケット6の回動角度を検出し、その検出結果をコントローラ30の機能要素F33にフィードバックする。機能要素F33は、算出したバケット角度β3を機能要素F4にフィードバックする。
機能要素F41は、基本的に、機能要素F6が生成した指令値α1rと機能要素F43が算出した旋回角度α1との差がゼロになるように、旋回制御機構31Bに対する旋回電流指令を生成する。その際に、機能要素F41は、旋回電流指令から導き出される目標旋回スプール変位量と機能要素F42が算出した旋回スプール変位量との差がゼロになるように、旋回電流指令を調節する。そして、機能要素F41は、その調節後の旋回電流指令を旋回制御機構31Bに対して出力する。
旋回制御機構31Bは、旋回電流指令に応じて開口面積を変化させ、その開口面積の大きさに対応するパイロット圧を制御弁173のパイロットポートに作用させる。制御弁173は、パイロット圧に応じて旋回スプールを移動させ、旋回油圧モータ2Aに作動油を流入させる。旋回スプール変位センサS2Aは、旋回スプールの変位を検出し、その検出結果をコントローラ30の機能要素F42にフィードバックする。旋回油圧モータ2Aは、作動油の流入に応じて回転し、上部旋回体3を旋回させる。旋回角速度センサS5は、上部旋回体3の旋回角度を検出し、その検出結果をコントローラ30の機能要素F43にフィードバックする。機能要素F43は、算出した旋回角度α1を機能要素F4にフィードバックする。
上述のように、コントローラ30は、作業体毎に、3段のフィードバックループを構成している。すなわち、コントローラ30は、スプール変位量に関するフィードバックループ、作業体の回動角度に関するフィードバックループ、及び、爪先位置に関するフィードバックループを構成している。そのため、コントローラ30は、自律制御の際に、バケット6の爪先の動きを高精度に制御できる。
次に、図14を参照し、ショベル100によるダンプトラックDTへの土砂等の積み込みが行われている作業現場の様子の一例について説明する。図14は、ショベル100によるダンプトラックDTへの土砂等の積み込みが行われている作業現場の様子の一例を示す。具体的には、図14は、ダンプトラックDTの後方から作業現場を見たときの図である。図14では、明瞭化のため、ショベル100(バケット6を除く)の図示が省略されている。また、図14において、実線で描かれたバケット6A、6B、6Cは、それぞれ掘削動作が終了したときのバケット6の状態、複合動作中のバケット6の状態、排土動作が開始される前のバケット6の状態を表す。また、図14における太い破線は、バケット6の背面にある所定点が描く軌跡を表す。
掘削動作が終了したときに、操作者によりスイッチNSが押されている状態で操作装置26が操作させると、コントローラ30はアタッチメントの所定部位、例えばバケット6の背面にある所定点が目標軌道に沿って移動するように、ショベル100を自律的に動作させる。これにより、バケット6の背面にある所定点が、掘削動作が終了した位置P1、複合動作中の位置P2、排土動作が開始される前の位置P3の順に移動し、土砂等の積み込み(ブーム上げ旋回)が行われる。
このとき、バケット交換時にバケット6の形状パラメータが変更されていない場合、図14の破線で描かれたバケット6D、6E、6Fに示されるように、バケット6の背面にある所定点が目標軌道からずれた状態で移動するため、バケット6の背面がダンプトラックDTのあおり等に当接する場合がある。
これに対し、本実施形態では、コントローラ30は、事前に取得されたバケット形状に応じてバケット6の形状パラメータを設定し、設定したバケット6の形状パラメータに基づいて導き出した目標軌道に沿ってバケット6を移動させる。そのため、バケット6が交換された場合においてもバケット6の背面がダンプトラックDTのあおり等に当接することが防止される。
また、コントローラ30は、目標軌道に沿ってバケット6を移動させる際、例えば空間認識装置70を用いてバケット6の背面がダンプトラックDTのあおり等に当接しないように監視するようにしてもよい。
今回開示された実施形態はすべての点で例示であって制限的なものではないと考えられるべきである。上記の実施形態は、添付の請求の範囲及びその趣旨を逸脱することなく、様々な形態で省略、置換、変更されてもよい。
上記の実施形態では、ショベル100のコントローラ30が事前に取得されたバケット形状に応じたバケット6の形状パラメータを設定し、設定されたバケット6の形状パラメータに基づいて目標軌道を導き出す(生成する)場合を例示したが、本開示はこれに限定されない。例えば、管理装置300が事前に取得されたバケット形状に応じたバケット6の形状パラメータを設定し、設定されたバケット6の形状パラメータに基づいて目標軌道を生成してもよい。
本国際出願は、2019年3月27日に出願した日本国特許出願第2019-060866号に基づく優先権を主張するものであり、当該出願の全内容を本国際出願に援用する。