図1は、本発明の実施例に係る建設機械の一例であるショベル(掘削機)を示す側面図である。ショベルの下部走行体1には旋回機構2を介して上部旋回体3が旋回可能に搭載される。上部旋回体3にはブーム4が取り付けられる。ブーム4の先端にはアーム5が取り付けられ、アーム5の先端にはエンドアタッチメントとしてのバケット6が取り付けられる。エンドアタッチメントとしてブレーカが取り付けられていてもよい。
ブーム4、アーム5、及びバケット6は、アタッチメントの一例である掘削アタッチメントを構成し、ブームシリンダ7、アームシリンダ8、及びバケットシリンダ9によりそれぞれ油圧駆動される。ブーム4にはブーム角度センサS1が取り付けられ、アーム5にはアーム角度センサS2が取り付けられ、バケットリンクにはバケット角度センサS3が取り付けられる。
ブーム角度センサS1は、ブーム4の回動角度を検出するセンサである。本実施例では、重力加速度を検出することで水平面に対するブーム4の傾斜角(以下、「ブーム角度」とする。)を検出する加速度センサである。具体的には、ブーム角度センサS1は上部旋回体3とブーム4とを連結するブームフートピン回りのブーム4の回動角度をブーム角度として検出する。
アーム角度センサS2は、アーム5の回動角度を検出するセンサである。本実施例では、重力加速度を検出することで水平面に対するアーム5の傾斜角(以下、「アーム角度」とする。)を検出する加速度センサである。具体的には、アーム角度センサS2はブーム4とアーム5とを連結するアームピン回りのアーム5の回動角度をアーム角度として検出する。
バケット角度センサS3は、バケット6の回動角度を検出するセンサである。本実施例では、重力加速度を検出することで水平面に対するバケット6の傾斜角(以下、「バケット角度」とする。)を検出する加速度センサである。具体的には、バケット角度センサS3はアーム5とバケット6を連結するバケットピン回りのバケット6の回動角度をバケット角度として検出する。
ブーム角度センサS1、アーム角度センサS2、及びバケット角度センサS3の少なくとも1つは、可変抵抗器を利用したポテンショメータ、対応する油圧シリンダのストローク量を検出するストロークセンサ、連結ピン回りの回動角度を検出するロータリエンコーダ等であってもよい。そして、ブーム角度センサS1、アーム角度センサS2、及びバケット角度センサS3は、アタッチメントの姿勢を算出するための姿勢センサとして機能する。
上部旋回体3にはキャビン10が設けられ且つエンジン11等の動力源が搭載される。また、上部旋回体3には機体傾斜センサS4及び測位センサS5が取り付けられる。キャビン10内には、入力装置D1、音声出力装置D2、表示装置D3、記憶装置D4、コントローラ30、及びマシンガイダンス装置50が搭載される。
コントローラ30は、ショベルの駆動制御を行う制御装置である。本実施例では、コントローラ30は、CPU及び内部メモリを含む演算処理装置で構成される。そして、コントローラ30の各種機能はCPUが内部メモリに格納されたプログラムを実行することで実現される。
マシンガイダンス装置50は操作者によるショベルの操作をガイドする装置である。本実施例では、マシンガイダンス装置50は、例えば、操作者が設定した目標地形の表面とバケット6の先端(爪先)位置との鉛直方向における距離を視覚的に且つ聴覚的に操作者に知らせることで操作者によるショベルの操作をガイドする。マシンガイダンス装置50は、その距離を視覚的に操作者に知らせるのみであってもよく、聴覚的に操作者に知らせるのみであってもよい。具体的には、マシンガイダンス装置50は、コントローラ30と同様、コントローラの1つとして、CPU及び内部メモリを含む演算処理装置で構成される。そして、マシンガイダンス装置50の各種機能はCPUが内部メモリに格納されたプログラムを実行することで実現される。また、マシンガイダンス装置50はコントローラ30に一体的に組み込まれていてもよい。
機体傾斜センサS4は、水平面に対する上部旋回体3の傾斜角を検出するセンサである。本実施例では、重力加速度を検出することで上部旋回体3の前後軸の水平面に対する傾斜角(以下、「機体ピッチ角度」とする。)、及び、上部旋回体3の左右軸の水平面に対する傾斜角(以下、「機体ロール角度」とする。)を検出する加速度センサである。
測位センサS5は、ショベルの位置及び向きを測定する装置である。本実施例では、測位センサS5は、GPS受信機及び電子コンパスを含み、マシンガイダンス装置50に対して世界測地系における測位センサS5の位置座標(緯度、経度、高度)及び向き(方位)に関する情報を出力する。世界測地系は、地球の重心に原点をおき、X軸をグリニッジ子午線と赤道との交点の方向にとり、Y軸を東経90度の方向にとり、そしてZ軸を北極の方向にとる三次元直交XYZ座標系である。電子コンパスは例えば3軸磁気センサで構成される。測位センサS5は2つのGPS受信機で構成されるGPSコンパスであってもよい。
入力装置D1は、ショベルの操作者が各種情報を入力するための装置である。本実施例では、入力装置D1は表示装置D3の表示画面の周辺に取り付けられるハードウェアスイッチである。ショベルの操作者は入力装置D1を通じてマシンガイダンス装置50に各種情報を入力する。入力装置D1はタッチパネルであってもよい。また、入力装置D1はUSBメモリであってもよい。この場合、操作者はキャビン10内に設置されたUSBコネクタにUSBメモリを差し込むことでUSBメモリ内に記憶された情報をマシンガイダンス装置50に入力できる。
音声出力装置D2は、マシンガイダンス装置50からの音声出力指令に応じて各種音声情報を出力する装置である。本実施例ではマシンガイダンス装置50に直接接続される車載スピーカが利用される。ブザーが利用されてもよい。
表示装置D3は、マシンガイダンス装置50からの指令に応じて各種画像情報を出力する装置である。本実施例ではマシンガイダンス装置50に直接接続される車載液晶ディスプレイが利用される。
記憶装置D4は、各種情報を記憶するための装置である。本実施例では、記憶装置D4は半導体メモリ等の不揮発性記憶媒体であり、マシンガイダンス装置50等が出力する各種情報を記憶する。
図2は、図1のショベルの駆動系の構成例を示すブロック図である。図2において、機械的動力系は二重線、高圧油圧ラインは太実線、パイロットラインは破線、電気駆動・制御系は細実線でそれぞれ示される。
エンジン11はショベルの駆動源である。本実施例では、エンジン11は、エンジン負荷の増減にかかわらずエンジン回転数を一定に維持するアイソクロナス制御を採用するディーゼルエンジンである。
エンジン11には油圧ポンプとしてのメインポンプ14及びパイロットポンプ15が接続される。メインポンプ14には高圧油圧ライン16を介してコントロールバルブ17が接続される。
コントロールバルブ17は、ショベルの油圧系の制御を行う油圧制御装置である。右側走行用油圧モータ1A、左側走行用油圧モータ1B、ブームシリンダ7、アームシリンダ8、バケットシリンダ9、旋回用油圧モータ21等の油圧アクチュエータは、高圧油圧ラインを介してコントロールバルブ17に接続される。
パイロットポンプ15にはパイロットライン25を介して操作装置26が接続される。操作装置26は、油圧アクチュエータを操作するための装置であり、レバー26A、レバー26B、ペダル26Cを含む。本実施例では、操作装置26は油圧ライン27を介してコントロールバルブ17に接続される。また、操作装置26は油圧ライン28を介して圧力センサ29に接続される。圧力センサ29は、操作装置26の操作内容を圧力の形で検出するセンサであり、検出値をコントローラ30に対して出力する。
次に、図3を参照し、コントローラ30及びマシンガイダンス装置50が有する各種機能要素について説明する。図3は、コントローラ30及びマシンガイダンス装置50の構成例を示す機能ブロック図である。
本実施例では、マシンガイダンス装置50は、ブーム角度センサS1、アーム角度センサS2、バケット角度センサS3、機体傾斜センサS4、測位センサS5、入力装置D1、及びコントローラ30からの出力を受け、音声出力装置D2、表示装置D3、及び記憶装置D4のそれぞれに対して各種指令を出力する。また、マシンガイダンス装置50は、座標取得部51、偏差計算部52、音声出力処理部53、及び表示処理部54を有する。コントローラ30及びマシンガイダンス装置50は、CAN(Controller Area Network)を通じて互いに接続される。
座標取得部51は、アタッチメントの所定部位の座標を取得する機能要素である。本実施例では、座標取得部51は、機体傾斜センサS4及び測位センサS5のそれぞれの検出値に基づいて基準座標系の原点座標(緯度、経度、高度)を導き出す。基準座標系はショベルを基準とする座標系であり、例えば、掘削アタッチメントの延在方向をX軸としショベルの旋回軸をZ軸とする3次元直交座標系である。基準座標系の原点座標と測位センサS5の取り付け位置の座標(以下、「測位センサ座標」とする。)との位置関係は相対的に不変である。そのため、座標取得部51は、機体傾斜センサS4及び測位センサS5のそれぞれの検出値から世界測地系における基準座標系の原点座標を一意に導き出すことができる。
具体的には、座標取得部51は、測位センサS5の検出値である世界測地系における測位センサS5の位置座標及び方位に基づいて世界測地系における基準座標系の原点座標を導き出す。
また、座標取得部51は、機体傾斜センサS4の検出値である機体ロール角度及び機体ピッチ角度に基づいて基準座標系を回転させて基準座標系の3軸を世界測地系の3軸に合わせるための回転行列を導き出す。
これにより、座標取得部51は、基準座標系における任意の点の座標が決まれば、世界測地系における基準座標系の原点座標と回転行列とに基づいてその任意の点に関する世界測地系における座標を導き出すことができる。
また、座標取得部51は、ブーム角度センサS1、アーム角度センサS2、及びバケット角度センサS3のそれぞれの検出値に基づいて掘削アタッチメントの姿勢を導き出す。掘削アタッチメント上の各点に対応する基準座標系における座標を導出できるようにするためであり、ひいては各点に対応する世界測地系における座標を導出できるようにするためである。掘削アタッチメント上の各点はバケットピンの位置及びバケット6の先端位置を含む。
偏差計算部52は、バケット6の先端の現在位置と目標位置との偏差を導き出す。本実施例では、偏差計算部52は、座標取得部51が取得したバケット6の先端位置の座標と目標地形情報とに基づいてバケット6の先端の現在位置と目標位置との偏差を導き出す。目標地形情報は施工完了時の地形に関する情報であり、目標地形を表す座標群を含む。また、目標地形情報は入力装置D1を通じて入力され且つ記憶装置D4に記憶される。
例えば、偏差計算部52は、バケット6の先端位置と目標地形の表面との鉛直方向における距離を偏差として導き出す。偏差は、バケット6の先端位置と目標地形の表面との水平方向における距離、最短距離等であってもよい。
音声出力処理部53は音声出力装置D2から出力させる音声情報の内容を制御する。本実施例では、音声出力処理部53は偏差計算部52が導き出した偏差が所定値以下となった場合に音声出力装置D2からガイダンス音としての断続音を出力させる。また、音声出力処理部53は、その偏差が小さくなるほど断続音の出力間隔(無音部分の長さ)を短くする。音声出力処理部53は、その偏差がゼロの場合、すなわち、バケット6の先端位置と目標地形の表面とが一致する場合、音声出力装置D2から連続音(出力間隔がゼロの断続音)を出力させてもよい。また、音声出力処理部53は、その偏差の正負が反転した場合、断続音の高さ(周波数)を変化させてもよい。偏差は、例えば、バケット6の先端位置が目標地形の表面より鉛直上方にある場合に正値となる。
表示処理部54は、表示装置D3に表示させる各種画像情報の内容を制御する。本実施例では、表示処理部54は、座標取得部51が取得したバケット6の先端位置の座標と目標地形を表す座標群との関係を表示装置D3に表示させる。具体的には、表示処理部54は、バケット6及び目標地形の断面を側方(Y軸方向)から見たCG画像、及び、バケット6及び目標地形の断面を後方(X軸方向)から見たCG画像を表示装置D3に表示させる。表示処理部54は偏差計算部52が導き出した偏差の大きさをバーグラフで表示してもよい。
次に、図4A及び図4Bを参照しながら、三次元直交座標系である基準座標系について説明する。図4Aはショベルの側面図であり、図4Bはショベルの上面図である。
図4A及び図4Bに示すように、基準座標系のZ軸はショベルの旋回軸PCに相当し、基準座標系の原点Oは旋回軸PCとショベルの接地面との交点に相当する。
Z軸と直交するX軸は掘削アタッチメントの延在方向に伸び、同じくZ軸と直交するY軸は掘削アタッチメントの延在方向に垂直な方向に伸びる。すなわち、X軸及びY軸はショベルの旋回とともにZ軸回りを回転する。
また、図4Aに示すように、上部旋回体3に対するブーム4の取り付け位置は、ブーム回転軸としてのブームフートピンの位置であるブームフートピン位置P1で表される。同様に、ブーム4に対するアーム5の取り付け位置は、アーム回転軸としてのアームピンの位置であるアームピン位置P2で表される。アーム5に対するバケット6の取り付け位置は、バケット回転軸としてのバケットピンの位置であるバケットピン位置P3で表される。バケット6の爪6aの先端位置はバケット先端位置P4で表される。
ブームフートピン位置P1とアームピン位置P2とを結ぶ線分SG1の長さはブーム長さとして所定値L1で表され、アームピン位置P2とバケットピン位置P3とを結ぶ線分SG2の長さはアーム長さとして所定値L2で表され、バケットピン位置P3とバケット先端位置P4とを結ぶ線分SG3の長さはバケット長さとして所定値L3で表される。所定値L1、L2、L3は記憶装置D4等に予め記憶されている。
また、線分SG1と水平面との間に形成されるブーム角度はβ1で表され、線分SG2と水平面との間に形成されるアーム角度はβ2で表され、線分SG3と水平面との間に形成されるバケット角度はβ3で表される。図4Aにおいて、ブーム角度β1、アーム角度β2、バケット角度β3は、X軸に平行な線に関し反時計回り方向をプラス方向とする。
ここで、ブームフートピン位置P1の三次元座標を(X、Y、Z)=(H0X、0、H0Z)とし、バケット先端位置P4の三次元座標を(X、Y、Z)=(X4、Y4、Z4)とすると、X4、Z4はそれぞれ式(1)及び式(2)で表される。
Y
4は0となる。バケット先端位置P4はXZ平面上に存在するためである。また、ブームフートピン位置P1が原点Oに対して相対的に不変であるため、ブーム角度β
1が決まればアームピン位置P2の座標が一意に決まる。同様に、ブーム角度β
1及びアーム角度β
2が決まればバケットピン位置P3の座標が一意に決まり、ブーム角度β
1、アーム角度β
2、及びバケット角度β
3が決まれば、バケット先端位置P4の座標が一意に決まる。
また、座標取得部51は、基準座標系における各点P1〜P4の座標が決まれば、世界測地系における各点P1〜P4の座標を一意に導き出すことができる。
しかしながら、バケット6の爪6aは使用により摩耗する消耗部である。そのため、上述の式(1)及び式(2)を用いて算出されるバケット先端位置P4の三次元座標(X、Y、Z)=(Xe、Ye、Ze)は、爪6aの摩耗が進むにつれて実際のバケット先端位置の三次元座標から乖離する。その結果、座標取得部51はバケット先端位置P4の正確な座標を取得できなくなり、マシンガイダンス装置50はショベルの操作を正確にガイドできなくなる。
そこで、本実施例では、コントローラ30は、後述の先端情報導出処理を実行することでバケット先端位置P4の正確な座標を導き出し、爪6aが摩耗したときであってもショベルの操作を正確にガイドできるようにする。
具体的には、コントローラ30は、機能要素としての座標算出部31及び摩耗量算出部32を有する。
座標算出部31は、消耗部の先端の座標を算出する機能要素である。本実施例では、座標算出部31は、世界測地系上の既知の一座標に爪6aを接触させたときに座標取得部51が取得するバケットピン位置P3の座標とバケット角度センサS3が検出するバケット角度とに基づいて世界測地系におけるバケット先端位置P4の座標を導き出す。
摩耗量算出部32は、消耗部の摩耗量を算出する機能要素である。本実施例では、摩耗量算出部32は、爪6aが摩耗する前に座標算出部31が算出したバケット先端位置P4の座標と爪6aが摩耗した後に座標算出部31が算出したバケット先端位置P4の座標とに基づいて爪6aの摩耗量を算出する。消耗部はブレーカのロッドであってもよい。
ここで図5、図6A、及び図6Bを参照し、コントローラ30が爪6aの先端に関する情報を導き出す処理(以下、「先端情報導出処理」とする。)について説明する。図5は先端情報導出処理の一例の流れを示すフローチャートである。また、図6A及び図6Bは図5の先端情報導出処理に関する座標を示すバケット6の側面図である。また、図6Aは爪6aの先端を基準点RPに接触させたときの図であり、太実線は爪6aの先端が摩耗したときのバケット6を示し、太点線は爪6aの先端が摩耗していないときのバケット6を示す。また、図6Bは図6Aにおける2つのバケット6の爪6a以外の部分の図を重ね合わせた状態を示す。
基準点は、所定の測地系の座標を有する地物であり基準杭等の測量用標識を含む。本実施例では基準点は世界測地系の座標を有する。基準点RPの座標(XR、YR、ZR)はコントローラ30及びマシンガイダンス装置50にとって既知である。
最初に、座標算出部31は第1座標取得期間中に爪6aの先端を基準点RPに接触させたときに座標取得部51が取得するバケットピン位置P3Aの座標(X3A、Y3A、Z3A)を取得する(ステップST1)。座標取得期間は、同じ摩耗条件の下で座標取得部51が座標を取得する期間を意味する。本実施例では、第1座標取得期間は、バケット6の爪6aが摩耗していない新品のときに座標取得部51が座標を取得できる期間であり、ショベルの初期設定直後の期間、爪6aの交換直後の期間等を含む。
具体的には、ショベルの操作者は、ブーム操作レバー、アーム操作レバー、バケット操作レバー、旋回操作レバー、走行ペダル等の操作装置26を操作してバケット6の爪6aを基準点RPに接触させる。そして、操作者は入力装置D1を介してそのときのバケットピン位置P3Aの座標を記憶するようマシンガイダンス装置50に指示を与える。マシンガイダンス装置50の座標取得部51はその指示に応じてバケットピン位置P3Aの座標を記憶装置D4に記憶する。
操作者は掘削アタッチメントの姿勢を変えながらバケット6の爪6aを複数回に亘って基準点RPに接触させ、その接触の度にバケットピン位置P3の座標を記憶するようマシンガイダンス装置50に指示を与えてもよい。この場合、座標取得部51は複数回に亘って記憶した複数の座標の平均座標をバケットピン位置P3Aの座標としてもよい。
その後、座標算出部31は、第2座標取得期間中に爪6aの先端を基準点RPに接触させたときに座標取得部51が取得するバケットピン位置P3Bの座標(X3B、Y3B、Z3B)を取得する(ステップST2)。本実施例では、第2座標取得期間は、新品の爪6aが実際に使用された後の座標取得期間、すなわち爪6aが摩耗した後の座標取得期間であり、例えば新品の爪6aの使用を開始した後で所定のショベル稼働時間にわたってショベルを稼働させた後の座標取得期間である。第2座標取得期間は、新品の爪6aの使用を開始してから所定の日数が経過した後の期間であってもよい。
具体的には、ショベルの操作者は第1座標取得期間中に行ったバケットピン位置P3Aの座標の取得と同様のやり方で第2座標取得期間中にバケットピン位置P3Bの座標を取得する。
その後、座標算出部31は爪6aの先端の座標を算出する(ステップST3)。本実施例では、座標算出部31は以下の式(3)を用いて爪6aが摩耗していない新品のときのバケットピン位置P3Aと基準点RP(バケット先端位置P4A)との距離(以下、「先端距離」とする。)L3Aを算出する。具体的には、座標算出部31は、第1座標取得期間中に座標取得部51が取得したバケットピン位置P3Aの座標(X3A、Y3A、Z3A)と基準点RPの座標(XR、YR、ZR)とに基づいて先端距離L3Aを算出する。
また、座標算出部31は以下の式(4)を用いて爪6aが磨耗した後のバケットピン位置P3Bと基準点RP(バケット先端位置P4B)との先端距離L
3Bを算出する。具体的には、座標算出部31は、第2座標取得期間中に座標取得部51が取得したバケットピン位置P3Bの座標(X
3B、Y
3B、Z
3B)と基準点RPの座標(X
R、Y
R、Z
R)とに基づいて先端距離L
3Bを算出する。座標値Y
3A、Y
3B、Y
Rは何れも同じ値(例えばゼロ)である。
その後、座標算出部31は、図6Bに示す関係に基づいて爪6aが磨耗していない新品のときのバケット先端位置P4C1の座標(X
4C1、Y
4C1、Z
4C1)を算出する。本実施例では、座標算出部31は、以下の式(5)及び式(6)を用いてバケット先端位置P4C1の座標(X
4C1、Y
4C1、Z
4C1)を算出する。具体的には、座標算出部31は、掘削アタッチメントが任意の姿勢にあるときに座標取得部51が取得したバケットピン位置P3Cの座標(X
3C、Y
3C、Z
3C)とバケット角度センサS3が検出したバケット角度β
3Cと先端距離L
3Aとに基づいて座標(X
4C1、Y
4C1、Z
4C1)を算出する。座標値Y
3C、Y
4C1は何れも同じ値(例えばゼロ)である。
また、座標算出部31は、以下の式(7)及び式(8)を用いて爪6aが摩耗した後のバケット先端位置P4C2の座標(X
4C2、Y
4C2、Z
4C2)を算出する。具体的には、座標算出部31は、掘削アタッチメントが任意の姿勢にあるときに座標取得部51が取得したバケットピン位置P3Cの座標(X
3C、Y
3C、Z
3C)とバケット角度センサS3が検出したバケット角度β
3Cと先端距離L
3Bとに基づいて座標(X
4C2、Y
4C2、Z
4C2)を算出する。座標値Y
3C、Y
4C2は何れも同じ値(例えばゼロ)である。角度δは、線分P3C−P4C1と線分P3C−P4C2との間に形成される角度であり、先端距離L
3Aと先端距離L
3Bとが決まれば一意に決まる角度である。
その後、摩耗量算出部32は爪6aの摩耗量を算出する(ステップST4)。本実施例では、摩耗量算出部32は、以下の式(9)を用いてバケット6の爪6aの摩耗量Wを算出する。具体的には、摩耗量算出部32は、座標算出部31が算出した、爪6aが摩耗していない新品のときのバケット先端位置P4C1の座標(X
4C1、Y
4C1、Z
4C1)と爪6aが摩耗した後のバケット先端位置P4C2の座標(X
4C2、Y
4C2、Z
4C2)とに基づいて摩耗量Wを算出する。
この構成により、コントローラ30は、既知の一座標である基準点RPに爪6aを接触させたときに座標取得部51が取得するバケットピン位置P3の座標に基づいて先端距離を導き出す。また、コントローラ30は、その先端距離とバケット角度センサS3が検出するバケット角度に基づいてバケット先端位置P4の座標を導き出す。そのため、コントローラ30は、先端情報導出処理の実行後であれば、爪6aの摩耗の有無にかかわらず、バケットピン位置P3の座標を取得することでバケット先端位置P4の座標を正確に導き出すことができる。
また、コントローラ30は、2つの座標取得期間のそれぞれで導出した先端距離を用いて摩耗量Wを算出できる。この場合、コントローラ30は、摩耗した爪6aの先端に対応するバケット先端位置P4の座標を直接的に導き出す代わりに、摩耗した爪6aの先端に対応するバケット先端位置P4の座標を間接的に導き出してもよい。具体的には、摩耗していない爪6aの先端に対応するバケット先端位置P4の座標を導き出した上で摩耗量Wに基づいてそのバケット先端位置P4の座標を補正し、摩耗した爪6aの先端に対応するバケット先端位置P4の座標を導き出してもよい。
そして、マシンガイダンス装置50は、コントローラ30が導き出す、摩耗を考慮したバケット先端位置P4の座標を利用してマシンガイダンスを提供できる。
次に、図7、図8A、及び図8Bを参照し、先端情報導出処理の別の例について説明する。図7は先端情報導出処理の別の例の流れを示すフローチャートである。また、図8A及び図8Bは図7の先端情報導出処理に関する座標を示す掘削アタッチメントの側面図である。また、図8Aはアーム5の先端を地面上の一点である接地点P5(P5A、P5C)に接触させたときの図であり、図8Bはバケット6の爪6aを接地点P5(P5A、P5C)に接触させたときの図である。また、太実線は爪6aの先端が摩耗したときのバケット6を示し、太点線は爪6aの先端が摩耗していないときのバケット6を示す。
接地点P5(P5A、P5C)の座標は、非消耗部としてのアーム5の表面上の一点を地面に接触させたときのその一点の座標として特定され、基準点の座標の代わりとして用いられる。非消耗部の表面上の一点は、バケットピン位置P3との相対位置関係が不変であり、その相対位置関係はコントローラ30及びマシンガイダンス装置50にとって既知である。
最初に、座標算出部31は第1座標取得期間中にアーム5の先端を接地点P5Aに接触させときに座標取得部51が取得するバケットピン位置P3Aの座標(X3A、Y3A、Z3A)を取得する(ステップST11)。本実施例では、第1座標取得期間は、バケット6の爪6aが摩耗していない新品のときに座標取得部51が座標を取得できる期間である。
具体的には、ショベルの操作者は、操作装置26を操作してアーム5の先端を接地点P5Aに接触させる。そして、操作者は入力装置D1を介してそのときのバケットピン位置P3Aの座標を記憶するようマシンガイダンス装置50に指示を与える。マシンガイダンス装置50の座標取得部51はその指示に応じてバケットピン位置P3Aの座標を記憶装置D4に記憶する。
その後、座標算出部31は、第1座標取得期間中にバケット6の爪6aの先端を接地点P5Aに接触させたときに座標取得部51が取得するバケットピン位置P3Bの座標(X3B、Y3B、Z3B)を取得する(ステップST12)。
具体的には、ショベルの操作者は操作装置26を操作して爪6aの先端を接地点P5Aに接触させる。例えば、操作者は、爪6aの延在方向が地面(水平面)に対して垂直となるように爪6aの先端を接地点P5Aに接触させる。そして、操作者は入力装置D1を介してそのときのバケットピン位置P3Bの座標を記憶するようマシンガイダンス装置50に指示を与える。マシンガイダンス装置50の座標取得部51はその指示に応じてバケットピン位置P3Bの座標を記憶装置D4に記憶する。
その後、座標算出部31は第2座標取得期間中にアーム5の先端を接地点P5Cに接触させたときに座標取得部51が取得するバケットピン位置P3Cの座標(X3C、Y3C、Z3C)を取得する(ステップST13)。本実施例では、第2座標取得期間は、新品の爪6aが実際に使用された後の座標取得期間、すなわち爪6aが摩耗した後の座標取得期間である。
その後、座標算出部31は、第2座標取得期間中に爪6aの先端を接地点P5Cに接触させたときに座標取得部51が取得するバケットピン位置P3Dの座標(X3D、Y3D、Z3D)を取得する(ステップST14)。
その後、座標算出部31は爪6aの先端の座標を算出する(ステップST15)。本実施例では、座標算出部31は以下の式(10)を用いて爪6aが摩耗していない新品のときの接地点P5Aの座標(X5A、Y5A、Z5A)を算出する。本実施例では、座標値Y5Aはゼロであり、座標値X5Aは座標値X3Aと等しい。距離H1は、記憶装置D4等に予め記憶された値であり、バケットピン位置P3Aと接地点P5Aに接触するアーム表面上の一点との距離を表す。距離H1は固定値であってもよく、掘削アタッチメントの姿勢に応じて決まる変動値であってもよい。
その上で、座標算出部31は以下の式(11)を用いて爪6aが摩耗していない新品のときのバケットピン位置P3Bと接地点P5A(バケット先端位置P4B)との先端距離L
3Aを算出する。具体的には、座標算出部31は、上述の接地点P5Aの座標(X
5A、Y
5A、Z
5A)と第1座標取得期間中に爪6aを接地点P5Aに接触させたときに座標取得部51が取得したバケットピン位置P3Bの座標(X
3B、Y
3B、Z
3B)とに基づいて先端距離L
3Aを算出する。
また、座標算出部31は以下の式(12)を用いて爪6aが摩耗した後の接地点P5Cの座標(X
5C、Y
5C、Z
5C)を算出する。本実施例では、座標値Y
5Cはゼロであり、座標値X
5Cは座標値X
3Cと等しい。また、接地点P5Cの座標は接地点P5Aの座標に等しい。但し、接地点P5Cの座標は接地点P5Aの座標と異なっていてもよい。距離H2は、記憶装置D4等に予め記憶された値であり、バケットピン位置P3Cと接地点P5Cに接触するアーム表面上の一点との距離を表す。距離H2は固定値であってもよく、掘削アタッチメントの姿勢に応じて決まる変動値であってもよい。本実施例では距離H2は距離H1と等しい。
その上で、座標算出部31は以下の式(13)を用いて爪6aが摩耗した後のバケットピン位置P3Dと接地点P5C(バケット先端位置P4D)との先端距離L
3Bを算出する。具体的には、座標算出部31は、上述の接地点P5Cの座標(X
5C、Y
5C、Z
5C)と第2座標取得期間中に爪6aを接地点P5Cに接触させたときに座標取得部51が取得したバケットピン位置P3Dの座標(X
3D、Y
3D、Z
3D)とに基づいて先端距離L
3Bを算出する。
その後、座標算出部31は、図6A及び図6Bで説明した方法と同じ方法で、爪6aが磨耗していない新品のときのバケット先端位置P4の座標、及び、爪6aが摩耗した後のバケット先端位置P4の座標を算出する。
その後、摩耗量算出部32は爪6aの摩耗量を算出する(ステップST16)。本実施例では、摩耗量算出部32は、図6A及び図6Bで説明したように、爪6aが磨耗していない新品のときのバケット先端位置P4の座標と爪6aが摩耗した後のバケット先端位置P4の座標とに基づいて爪6aの摩耗量を算出する。
このように、操作者はアーム5の先端を地面に接触させることで接地点P5の座標をコントローラ30に特定させる。そして、操作者は接地点P5に爪6aを接触させたときに座標取得部51が取得するバケットピン位置P3の座標に基づいてコントローラ30に先端距離を導出させる。コントローラ30は、その先端距離とバケット角度センサS3が検出するバケット角度に基づいてバケット先端位置P4の座標を導き出す。そのため、コントローラ30は、先端情報導出処理の実行後であれば、爪6aの摩耗の有無にかかわらず、バケットピン位置P3の座標を取得することでバケット先端位置P4の座標を正確に導き出すことができる。また、コントローラ30は、2つの座標取得期間のそれぞれで導出した先端距離を用いて摩耗量Wを算出できる。
上述の実施例では、ショベルの操作者はアーム5の先端を地面に接触させることで接地点P5の座標をコントローラ30に特定させるが、本発明はこの構成に限定されるものではない。例えば、操作者は、図9に示すように非消耗部としてのバケット背面を地面に接触させることで接地点P5(P5A、P5C)の座標をコントローラ30に特定させてもよい。また、操作者は非消耗部としてのバケットリンクを地面に接触させることで接地点P5の座標をコントローラ30に特定させてもよい。地面に接触したか否かの判定は、所定のスイッチが操作されたか否かに基づいていてもよい。この場合、操作者はバケット6の動きを見ながらバケット6の所定部位が地面に接触したと判断した場合にそのスイッチを押下する。コントローラ30はそのスイッチが押下された場合に所定部位が地面に接触したと判定して接地点P5の座標を取得する。コントローラ30はバケットシリンダ9内の作動油の圧力が予め設定された閾値を超えた場合に所定部位が地面に接触したと判定して接地点P5の座標を取得してもよい。バケット6の爪6aを地面に接触させる場合、操作者は爪6aが地面に対して略垂直となるようにアタッチメントを操作してもよい。バケット6の形状がコントローラ30に事前に入力されている場合、コントローラ30は、爪6aが地面に対して略垂直となるようにアタッチメントの姿勢を自動的に制御してもよい。
次に、図10を参照し、先端情報導出処理のさらに別の例について説明する。図10は先端情報導出処理のさらに別の例の流れを示すフローチャートである。また、図10の先端情報導出処理は、1回の座標取得期間中に取得した2つのバケットピン位置の座標に基づいてバケット先端位置の座標及び爪6aの摩耗量を算出する点で図7の先端情報導出処理と相違する。そのため、図8A及び図8Bを参照しながら図10の先端情報導出処理について説明する。
最初に、座標算出部31はアーム5の先端を接地点P5Cに接触させたときに座標取得部51が取得するバケットピン位置P3Cの座標(X3C、Y3C、Z3C)を取得する(ステップST21)。
その後、座標算出部31は、バケット6の爪6aの先端を接地点P5Cに接触させたときに座標取得部51が取得するバケットピン位置P3Dの座標(X3D、Y3D、Z3D)を取得する(ステップST22)。
その後、座標算出部31は爪6aの先端の座標を算出する(ステップST23)。本実施例では、座標算出部31は上述の式(12)を用いて接地点P5CのZ座標の値Z5Cを算出する。本実施例では、Y座標の値Y5Cはゼロであり、X座標の値X5Cはバケットピン位置P3CのX座標の値X3Cと等しい。
その上で、座標算出部31は上述の式(13)を用いてバケットピン位置P3Dと接地点P5C(バケット先端位置P4D)との先端距離L3Bを算出する。
その後、座標算出部31は、図6A及び図6Bで説明した方法と同じ方法で、爪6aが摩耗した後のバケット先端位置P4の座標を算出する。
その後、摩耗量算出部32は爪6aの摩耗量を算出する(ステップST24)。本実施例では、摩耗量算出部32は、予め記憶された(爪6aが摩耗していない新品のときの)先端距離L3AとステップST23で算出した先端距離L3Bとに基づいて爪6aの摩耗量を算出する。先端距離L3Aは、操作者が事前に入力する爪の種類に応じて自動的に設定されてもよい。
具体的には、摩耗量算出部32は、図6Bに示すように、先端距離L3Aと先端距離L3Bと現在のバケットピン位置P3の座標(X3C、Y3C、Z3C)とに基づき、爪6aが摩耗していない新品のときのバケット先端位置P4C1の座標(X4C1、Y4C1、Z4C1)と爪6aが摩耗した現在のバケット先端位置P4C2の座標(X4C2、Y4C2、Z4C2)とを導き出す。そして、上述の式(9)を用いてバケット6の爪6aの摩耗量Wを算出する。
この構成により、コントローラ30は、図7の先端情報導出処理よりも低い演算負荷で摩耗した爪6aの先端の座標及びその摩耗量を導き出すことができる。
次に、図11及び図12を参照し、先端情報導出処理のさらに別の例について説明する。図11は先端情報導出処理のさらに別の例の流れを示すフローチャートである。図12は図11の先端情報導出処理に関する座標を示すバケット6の側面図である。具体的には、図12は2つの異なる姿勢でバケット6の爪6aを同じ一つの参照点SPに接触させたときの図である。太実線は第1姿勢をとるバケット6を示し、太点線は第2姿勢をとるバケット6を示す。
最初に、座標算出部31は第1姿勢をとるバケット6の爪6aの先端を参照点SPに接触させときに座標取得部51が取得するバケットピン位置P3Aの座標(X3A、Y3A、Z3A)を取得する(ステップST31)。
その後、座標算出部31は第2姿勢をとるバケット6の爪6aの先端を参照点SPに接触させときに座標取得部51が取得するバケットピン位置P3Bの座標(X3B、Y3B、Z3B)を取得する(ステップST32)。
その後、座標算出部31は爪6aの先端の座標を算出する(ステップST33)。本実施例では、座標算出部31は、バケットピン位置P3Aの座標(X3A、Y3A、Z3A)と、バケットピン位置P3Bの座標(X3B、Y3B、Z3B)と、線分P3A−SPの長さが線分P3B−SPの長さに等しいという事実とに基づいて、バケットピン位置P3A又はバケットピン位置P3Bと参照点SP(バケット先端位置P4A)との先端距離L3Bを以下の式(14)を用いて算出する。そして、座標算出部31は、バケットピン位置P3A又はバケットピン位置P3Bの座標と、バケット角度センサS3が検出するバケット角度と、先端距離L3Bとに基づいて爪6aの先端の座標を算出する。
第1姿勢をとるバケット6の爪6aの先端を接触させる参照点のX座標の値は、第2姿勢をとるバケット6の爪6aの先端を接触させる参照点のX座標の値と異なっていてもよい。すなわち、2つの参照点は同じ高さの水平面上の異なる位置にあってもよい。
その後、摩耗量算出部32は爪6aの摩耗量を算出する(ステップST34)。本実施例では、摩耗量算出部32は、予め記憶された(爪6aが摩耗していない新品のときの)先端距離L3AとステップST33で算出した先端距離L3Bとに基づいて爪6aの摩耗量を算出する。
具体的には、摩耗量算出部32は、図13に示すように、先端距離L3Aと先端距離L3Bと現在のバケットピン位置P3Cの座標(X3C、Y3C、Z3C)とに基づき、爪6aが摩耗していない新品のときのバケット先端位置P4C1の座標(X4C1、Y4C1、Z4C1)と爪6aが摩耗した現在のバケット先端位置P4C2の座標(X4C2、Y4C2、Z4C2)とを導き出す。そして、上述の式(9)を用いてバケット6の爪6aの摩耗量Wを算出する。図13は摩耗量算出部32が摩耗量Wを算出する摩耗量算出処理に関する座標を示すバケット6の側面図である。また、図13の例では、コントローラ30は爪6aの延在方向が地面(水平面)に対して垂直となるように、掘削アタッチメントの姿勢を自動的に制御して爪6aの先端を地面に接触させる。そのため、コントローラ30は、バケット先端位置P4C1のZ座標の値Z4C1とバケット先端位置P4C2のZ座標の値Z4C2との差を算出するだけで摩耗量Wを算出できる。
この構成により、コントローラ30は、図7の先端情報導出処理よりも低い演算負荷で摩耗した爪6aの先端の座標及びその摩耗量を導き出すことができる。
次に、図14を参照し、コントローラ30の別の構成例について説明する。図14は、コントローラ30の別の構成例を示す機能ブロック図である。
図14の構成は、マシンガイダンス装置50がコントローラ30に統合された点で図3の構成と相違するが各構成要素の機能は同じである。
図14の構成では、マシンガイダンス装置50における座標取得部51、偏差計算部52、音声出力処理部53、及び表示処理部54の4つ全ての機能要素がコントローラ30に統合されているが、4つの機能要素のうちの一部のみがコントローラ30に統合されてもよい。この場合、4つの機能要素のうちの統合されていない残りの部分を有するマシンガイダンス装置がコントローラ30に接続される。
この構成により、図14のコントローラ30は、図3のコントローラ30と同様の効果を実現できる。
以上、いくつかの先端情報導出処理を説明したが、ショベルの操作者は、これら先端情報導出処理の何れかを実施することで、特別な道具を要することなく簡単にバケット6の爪6aの摩耗量を測定できる。
また、操作者は、摩耗した爪6aの先端に対応するバケット先端位置P4の座標に基づくマシンガイダンスを受けることができる。そのため、施工面の仕上がり精度を向上させることができる。
以上、本発明の好ましい実施例について詳説したが、本発明は、上述した実施例に制限されることはなく、本発明の範囲を逸脱することなしに上述した実施例に種々の変形及び置換を加えることができる。
例えば、上述の実施例では、接地点P5は地面上の一点であるが本発明はこの構成に限定されるものではない。具体的には、接地点P5は、掘削アタッチメントの非消耗部と消耗部(爪6a)の双方を接触させることができる地物であればよく、例えば、垂直壁の表面上の一点であってもよい。
また、上述の実施例では、参照点SPは地面上の一点であるが本発明はこの構成に限定されるものではない。具体的には、参照点SPは、掘削アタッチメントの消耗部(爪6a)を接触させることができる地物であればよく、例えば、垂直壁の表面上の一点であってもよい。
また、基準点RP、接地点P5、参照点SPは実在の点である必要はなく、光学的、磁気的、或いは電気的に設定される仮想点であってもよい。
また、上述の実施例では、座標取得部51は、ショベルを基準とする基準座標系を回転させて基準座標系の3軸を世界測地系の3軸に合わせることで基準座標系における任意の点に対応する世界測地系における座標を導き出す。例えば、座標取得部51は、世界測地系1984、日本測地系2000、国際地球基準座標系等の全地球的測地系における座標(緯度、経度、高度)を導き出す。但し、座標取得部51は、局所座標系(地域座標系)等のより狭い範囲の測地系の座標を導き出してもよい。
また、上述の実施例では、摩耗量算出部32は地面(水平面)に対する爪6aの延在方向の角度が既知であるか否かにかかわらずバケット6の爪6aの摩耗量を算出する。しかし、地面(水平面)に対する爪6aの延在方向の角度が既知の場合、摩耗量算出部32はより簡易に爪6aの摩耗量を算出できる。例えば、入力装置D1等を通じてバケット6の形状に関する情報が予めコントローラ30に入力されている場合、コントローラ30は地面(水平面)に対する爪6aの延在方向の角度を制御できる。具体的には、コントローラ30は、操作者がバケット6の爪6aを地面(水平面)に接触させるべく掘削アタッチメントを操作する場合に、爪6aの延在方向が地面(水平面)に対して垂直となるようにバケット6の開閉度合いを自動的に調整する。この場合、コントローラ30は、図15に示すように、バケットピン位置P3Aの高さ(Z座標の値)とバケットピン位置P3Bの高さ(Z座標の値)の差HDを摩耗量Wとして算出する。バケットピン位置P3Aは爪6aの先端が摩耗していないときに爪6aを地面(水平面)に対して垂直に接触させたときのバケットピン位置であり、バケットピン位置P3Bは爪6aの先端が摩耗したときに爪6aを同じ地面(水平面)に対して垂直に接触させたときのバケットピン位置である。このように、コントローラ30は、爪6aを地面(水平面)に対して垂直に接触させることができる場合には、バケットピン位置の高さの変動のみに基づいて爪6aの摩耗量を算出できる。
また、本願は、2014年12月16日に出願した日本国特許出願2014−254050号に基づく優先権を主張するものであり、この日本国特許出願の全内容を本願に参照により援用する。