(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0012】
以下、本発明の実施の形態を図面を参照しつつ説明する。なお、本実施の形態では、建設機械の一例として、フロント装置(フロント作業機)の先端に作業具としてバケットを備える油圧ショベルを例示して説明するが、ブレーカやマグネットなどのバケット以外のアタッチメントを備える油圧ショベルに本発明を適用することも可能である。
【0013】
<第1の実施の形態>
本発明の第1の実施の形態を
図1〜
図8を参照しつつ説明する。
【0014】
図1は、本実施の形態に係る建設機械の一例である油圧ショベルの外観を模式的に示す図である。
【0015】
図1において、油圧ショベル100は、垂直方向にそれぞれ回動する複数の被駆動部材(ブーム4、アーム5、バケット(作業具)6)を連結して構成された多関節型のフロント装置(フロント作業機)1と、車体を構成する上部旋回体2及び下部走行体3とを備え、上部旋回体2は下部走行体3に対して旋回可能に設けられている。また、フロント装置1のブーム4の基端は上部旋回体2の前部に垂直方向に回動可能に支持されており、アーム5の一端はブーム4の基端とは異なる端部(先端)に垂直方向に回動可能に支持されており、アーム5の他端にはバケット6が垂直方向に回動可能に支持されている。ブーム4、アーム5、バケット6、上部旋回体2、及び下部走行体3は、油圧アクチュエータであるブームシリンダ4a、アームシリンダ5a、バケットシリンダ6a、旋回モータ2a、及び左右の走行モータ3a(ただし、一方の走行モータのみ図示)によりそれぞれ駆動される。
【0016】
ブーム4、アーム5及びバケット6は、フロント装置1を含む平面上で動作し、以下ではこの平面を動作平面と称することがある。つまり動作平面とは、ブーム4、アーム5及びバケット6の回動軸に直交する平面であり、ブーム4、アーム5及びバケット6の幅方向の中心に設定することができる。
【0017】
オペレータが搭乗する運転室9には、油圧アクチュエータ2a〜6aを操作するための操作信号を出力する操作レバー(操作装置)9a,9bが設けられている。図示はしないが操作レバー9a,9bはそれぞれ前後左右に傾倒可能であり、操作信号であるレバーの傾倒量、すなわちレバー操作量を電気的に検知する図示しない検出装置を含み、検出装置が検出したレバー操作量を制御装置であるコントローラ19(
図2参照)に電気配線を介して出力する。つまり、操作レバー9a,9bの前後方向または左右方向に、油圧アクチュエータ2a〜6aの操作がそれぞれ割り当てられている。
【0018】
ブームシリンダ4a、アームシリンダ5a、バケットシリンダ6a、旋回モータ2a及び左右の走行モータ3aの動作制御は、図示しないエンジンや電動モータなどの原動機によって駆動される油圧ポンプ装置7から各油圧アクチュエータ2a〜6aに供給される作動油の方向及び流量をコントロールバルブ8で制御することにより行う。コントロールバルブ8は、図示しないパイロットポンプから電磁比例弁を介して出力される駆動信号(パイロット圧)により行われる。操作レバー9a,9bからの操作信号に基づいてコントローラ19で電磁比例弁を制御することにより、各油圧アクチュエータ2a〜6aの動作が制御される。
【0019】
なお、操作レバー9a,9bは油圧パイロット方式であってもよく、それぞれオペレータにより操作される操作レバー9a,9bの操作方向及び操作量に応じたパイロット圧をコントロールバルブ8に駆動信号として供給し、各油圧アクチュエータ2a〜6aを駆動するように構成しても良い。
【0020】
上部旋回体2、ブーム4、アーム5、及びバケット6には、それぞれ、姿勢センサとして慣性計測装置(IMU: Inertial Measurement Unit)12,14〜16が配置されている。以降、これらの慣性計測装置を区別する必要が有る場合は、それぞれ、車体慣性計測装置12、ブーム慣性計測装置14、アーム慣性計測装置15、及びバケット慣性計測装置16と称する。
【0021】
慣性計測装置12,14〜16は、角速度及び加速度を計測するものである。慣性計測装置12,14〜16が配置された上部旋回体2や各被駆動部材4〜6が静止している場合を考えると、各慣性計測装置12,14〜16に設定されたIMU座標系における重力加速度の方向(つまり、鉛直下向き方向)と、各慣性計測装置12,14〜16の取り付け状態(つまり、各慣性計測装置12,14〜16と上部旋回体2や各被駆動部材4〜6との相対的な位置関係)とに基づいて、上部旋回体2や各被駆動部材4〜6の向き(姿勢:後述の姿勢角度θ)を検出することができる。ここで、慣性計測装置14〜16は、複数の被駆動部材のそれぞれの姿勢に関する情報(以降、姿勢情報と称する)を検出する姿勢情報検出装置を構成している。
【0022】
なお、姿勢情報検出装置は慣性計測装置に限られるものではなく、例えば、傾斜角センサを用いても良い。また、各被駆動部材4〜6の連結部分にポテンショメータを配置し、上部旋回体2や各被駆動部材4〜6の相対的な向き(姿勢情報)を検出し、検出結果から各被駆動部材4〜6の姿勢を求めても良い。また、ブームシリンダ4a、アームシリンダ5a、及びバケットシリンダ6aにそれぞれストロークセンサを配置し、ストローク変化量から上部旋回体2や各被駆動部材4〜6の各接続部分における相対的な向き(姿勢情報)を算出し、その結果から各被駆動部材4〜6の姿勢(姿勢角度θ)を求めるように構成しても良い。
【0023】
図2は、油圧ショベルに搭載されるコントローラの処理機能の一部を模式的に示す図である。
【0024】
図2において、コントローラ19は、油圧ショベル100の動作を制御するための種々の機能を有するものであり、その一部として姿勢演算装置15a、モニタ表示制御装置15b、油圧システム制御装置15c、及び施工目標面演算装置15dの各機能部を有している。
【0025】
姿勢演算装置15aは、慣性計測装置12,14〜16からの検出結果、及び、運転室9に配置された演算姿勢設定部18(後述)からの入力に基づいて、フロント装置1の姿勢を演算する姿勢演算処理(後述)を行う。
【0026】
施工目標面演算装置15dは、図示しない記憶装置などに施工管理者によって予め記憶されている3次元施工図面などの施工情報17と、施工目標面演算装置15dで演算された施工目標面とに基づいて、施工対象の目標形状を定義する施工目標面を演算する。
【0027】
モニタ表示制御装置15bは、運転室9に設けられた図示しないモニタの表示を制御するものであり、施工目標面演算装置15dで演算された施工目標面と、姿勢演算装置15aで演算されたフロント装置1の姿勢とに基づいて、オペレータに対する操作支援の指示内容を演算し、運転室9のモニタに表示する。すなわち、モニタ表示制御装置15bは、例えば、ブーム4、アーム5、バケット6などの被駆動部材を有するフロント装置1の姿勢や、バケット6の先端位置と角度をモニタに表示してオペレータの操作を支援するマシンガイダンスシステムとしての機能の一部を担っている。
【0028】
油圧システム制御装置15cは、油圧ポンプ装置7やコントロールバルブ8、各油圧アクチュエータ2a〜6a等からなる油圧ショベル100の油圧システムを制御するものであり、施工目標面演算装置15dで演算された施工目標面と、姿勢演算装置15aで演算されたフロント装置1の姿勢とに基づいて、フロント装置1の動作を演算し、その動作を実現するように油圧ショベル100の油圧システムを制御する。すなわち、油圧システム制御装置15cは、例えば、バケット6などの作業具の先端が目標施工面に一定以上近づかないように動作に制限をかけたり、作業具(例えば、バケット6の爪先)が目標施工面に沿って動くよう制御したりするマシンコントロールシステムとしての機能の一部を担っている。
【0029】
図3は、コントローラの姿勢演算装置の処理機能を概略的に示す機能ブロック図である。また、
図4は、本実施の形態で定義するフロント座標系と油圧ショベルとの関係を模式的に示す側面図である。
【0030】
図3において、姿勢演算装置15aは、慣性計測装置12,14〜16からの検出結果、及び、運転室9に配置された演算姿勢設定部18からの入力に基づいて、フロント装置1の姿勢を演算する姿勢演算処理を行うものであり、設計情報記憶部151、基準面設定部152、較正値演算部153、及び作業位置演算部154の各機能部を有している。
【0031】
設計情報記憶部151は、建設機械の車体寸法の情報を書き込んだROM(Read Only Memory)やRAM(Random Access Memory)などの記憶装置である。設計情報記憶部151に記憶される車体寸法としては、例えば、上部旋回体2の幅(車体幅)や長さ、上部旋回体2の旋回中心位置、上部旋回体2に対するフロント装置1の取り付け位置(すなわち、ブームフートピンの位置)、ブーム4、アーム5、バケット6の長さなどがある。
【0032】
基準面設定部152は、設計情報記憶部151から得られる車体寸法に基づいて、較正値演算部153でのパラメータ較正処理(後述)に用いる基準面を設定する。
【0033】
較正値演算部153は、基準面設定部152で設定される基準面、ブーム慣性計測装置14、アーム慣性計測装置15、バケット慣性計測装置16の各検出結果、及び作業位置演算部154の演算結果を入力として、各慣性計測装置14〜16の検出結果を較正するための較正パラメータを演算する。
【0034】
作業位置演算部154は、各慣性計測装置12,14〜16の検出結果、及び較正値演算部153の演算結果に基づいて、フロント装置1の先端に設けられた作業具の車体に対する相対位置(本実施の形態では、バケット6の爪先位置)を演算する。
【0035】
ここで、姿勢演算処理の原理について説明する。
【0036】
図4に示すように、本実施の形態では、ブームフートピンの位置(つまり、ブーム4の上部旋回体2に対する回動中心)を原点O(0,0)とし、上部旋回体2の前後方向にx軸(前方向に正の値)、上下方向にz軸(上方向に正の値)を定義した直行座標系であるフロント座標系を用いる。つまり、フロント座標系はフロント装置1の動作平面上に設定される。
【0037】
ブーム4の回動支点(ブームフートピンの位置)とアーム5の回動支点(ブーム4とアーム5の連結部)との距離をブーム長さL
bm、アーム5の回動支点とバケット6の回動支点(アーム5とバケット6の連結部)の距離をアーム長さL
am、バケット6の回動支点とバケット6の基準点B(ここでは、予めバケット6の先端(爪先)を基準点Bとした場合を示す)との距離をバケット長さLbkとすれば、基準点Bのフロント座標系における座標値(x,z)は、ブーム4、アーム5、バケット6(正確には、ブーム長さL
bm、アーム長さL
am、及びバケット長さL
bkの向き)の水平方向との成す角(姿勢角度)をそれぞれθ
bm、θ
am、θ
bkとして下記の式(1)及び式(2)から求めることができる。
【0040】
なお、姿勢角度θ
bm、θ
am、θ
bkは、水平方向より上方では正の値、下方では負の値を示す。
【0041】
ここで、θ
sは、較正パラメータであり、姿勢情報検出装置(本実施の形態では慣性計測装置14〜16)で検出された姿勢角度θ(θ
bm、θ
am、θ
bk)、又は、姿勢情報から演算された姿勢角度θがオフセット誤差を有しているという仮定に基づくと、姿勢角度の真値をθ
tをとして下記の式(3)から求めることができる。
【0043】
なお、上記の式(1)及び式(2)においては、姿勢角度θ
bm,θ
am,θ
bkにそれぞれ対応して、較正パラメータθ
sbm,θ
sam,θ
sbkと定義する。
【0044】
較正値演算部153は、上記式(2)に基づいて、較正パラメータθ
sbm,θ
sam,θ
sbkを演算する。具体的には、既知のzの値を与える基準面(基準面設定部152で設定)にフロント装置1の作業具の基準点(ここでは、バケット6の爪先に設定した基準点B)を配置することによって式(2)の左辺を既知の値に設定するとともに、式(2)の右辺に慣性計測装置14〜16(姿勢情報検出装置)からの検出結果(姿勢角度θ
bm,θ
am,θ
bk)を設定することにより、較正パラメータθ
sbm,θ
sam,θ
sbkを演算する。なお、ブーム長さL
bm、アーム長さL
am、及びバケット長さL
bkの長さは、短時間の作業中に大きな変化が起こるものではないため、設計情報記憶部151より与えられた値を定数として扱う。
【0045】
上記の式(2)は、基準点Bの位置(高さ)を既知の値z
setに設定した場合、下記の式(4)のように表すことができる。
【0047】
上記の式(4)における未知変数は、較正パラメータθ
sbm,θ
sam,θ
sbkの3つであり、複数の被駆動部材4〜6に配置された慣性計測装置14〜16の数でと同じである。したがって、上記の式(4)の姿勢角度θ
bm,θ
am,θ
bkのうち少なくとも1つが異なる少なくとも3本の連立方程式を立てることができれば、較正パラメータθ
sbm,θ
sam,θ
sbkを決定することができる。
【0048】
なお、被駆動部材の数が4以上の場合(言い換えると、較正パラメータの数が4以上の場合)であっても、フロント装置1を構成する被駆動部材の個数の連立方程式を立てることが出来れば、それらの較正パラメータを決定することができる。
【0049】
(基準面の設定:基準面設定部152)
本実施の形態では、
図4に示したように、ほぼ水平にならされた地面上に油圧ショベル100が配置された場合の地面を基準面とする場合を例示する。この基準面にバケット6の基準点Bを配置して一致させたとき、基準点Bの高さは原点Oよりブームフートピンの高さだけ低い位置となるため、下記の式(5)が成り立つ。
【0051】
このように基準面を設定することにより、特別な道具を使わずに基準面を作ることができる。なお、地面に凹凸がある場合には上記の式(5)の精度の低下が見込まれるが、コンクリートや鉄板などで舗装された地面を基準面とすることにより上記の式(5)の精度を担保し、より効果的な較正パラメータの演算を実現できる。
【0052】
(姿勢角度θ
bm,θ
am,θ
bkの取り込み:較正値演算部153)
図5〜
図7は、姿勢角度を取り込む場合のフロント装置の姿勢を例示する図である。
図5は、アーム5のクラウド及びダンプ方向の稼動範囲に余裕のある状態でバケット6の基準点Bを基準面(地面)に配置した状態、
図6は
図5に示した場合よりもアーム5をクラウドさせた状態でバケット6の基準点Bを基準面(地面)に配置した状態、
図7は
図5に示した場合よりもアーム5をダンプさせた状態でバケット6の基準点Bを基準面(地面)に配置した状態をそれぞれ示している。
【0053】
較正パラメータθ
sbm,θ
sam,θ
sbkを演算する姿勢の設定(すなわち、姿勢角度θ
bm,θ
am,θ
bkの取り込み)は、運転室9に設けられた演算姿勢設定部18をオペレータが操作することにより行う。なお、演算姿勢設定部18は、運転室9に設けられたスイッチ、或いは、モニタ等の表示装置と一体的に機能するGUI(Graphical User Interface)の一機能などによって実現される。また、較正値演算部153の動作と連動したレバー操作(たとえば、トリガー付きのレバー装置ならばトリガーを引く)を取り込みの契機としても良いし、姿勢角度θ
bm,θ
am,θ
bkの取り込み用の姿勢を取った後に一定時間レバー操作が無い場合に自動的に取り込みを行っても良い。
【0054】
図5〜
図7に示したように、複数の被駆動部材4〜6の少なくとも1つの姿勢が異なるフロント装置1の複数の姿勢において、姿勢角度θ
bm,θ
am,θ
bkを取り込むことにより、姿勢角度θ
bm,θ
am,θ
bkのうち少なくとも1つが異なる3本の連立方程式を立てることができる。なお、フロント装置1の姿勢を変えずに旋回のみを行って姿勢角度θ
bm,θ
am,θ
bkの取り込みを行っても1つの姿勢として扱われることは言うまでもない。
【0055】
なお、
図5〜
図7に示したようにフロント装置1の各姿勢においては、慣性計測装置14〜16のセンサ特性の誤差や、地面状態の誤差の影響を受けることが考えられるため、フロント装置1におけるさらに他の姿勢をとり、較正パラメータθ
sbm,θ
sam,θ
sbkの数よりも多くの連立方程式を立てて演算を行ったうえで、たとえば最小二乗法によって各較正パラメータθ
sbm,θ
sam,θ
sbkを演算するように構成してもよい。
【0056】
図8は、姿勢演算処理を示すフローチャートである。
【0057】
図8において、まず、フロント装置1の姿勢を決めた状態(例えば、
図5〜
図7のいずれかの状態)で作業具(バケット6)の基準点Bを基準面に合わせる(ステップS100)。この状態で、演算姿勢設定部18を操作することにより、この姿勢での姿勢データとして姿勢角度θ
bm,θ
am,θ
bkを取り込んで、較正値演算部153内の図示しない記憶部に記憶する(ステップS110)。続いて、フロント装置1の3種類以上の姿勢において姿勢データを取得したかどうかを判定し(ステップS120)、判定結果がNOの場合には、フロント装置1の姿勢を、姿勢データを取得していない他の姿勢に変更し(ステップS140)、ステップS100,S110の処理を繰り返す。また、ステップS120での判定結果がYESの場合には、姿勢データの取得を終了するかどうかを判定する(ステップS130)。この判定は、運転室9のモニタ等の表示装置に姿勢データの取得を続けるかどうかの判断を求める画面を表示し、演算姿勢設定部18をオペレータが操作することによりその都度判定する場合のほか、4回以上の回数(つまり、未知変数としての較正パラメータθ
sbm,θ
sam,θ
sbkの個数よりも多い回数)を予め定め設定しておき、その回数を満たすかどうか判定するように構成しても良い。ステップS130での判定結果がNOの場合には、ステップS140及びステップS100,S110の処理を繰り返す。また、ステップS130での判定結果がYESの場合には、得られた姿勢角度θ
bm,θ
am,θ
bkを用いて式(4)に係る連立方程式を立て、較正パラメータθ
sbm,θ
sam,θ
sbkを演算し、較正値演算部153内に記憶するとともに、作業位置演算部154に演算結果を出力し(ステップS150)、処理を終了する。
【0058】
以上のように構成した本実施の形態の効果を従来技術と比較しつつ説明する。
【0059】
図26及び
図27は、従来技術における油圧ショベルのブーム、アーム、バケットを3リンク機構で示し、フロント座標系の原点(ブームフートピン位置で定義)からバケットの爪先位置の座標を模式的に示した図であり、
図26は平地成形作業を、
図27は法面などの斜面成形作業をそれぞれ示している。
【0060】
図26及び
図27から分かるように、それぞれの作業で旋回前後方向に対する作業具の位置は同じx=Lであるが、上下方向に対する作業具の位置は、y=−Hおよびy=−hとなり、異なった値となる。従来技術においては、地面などを基準面としてバケット爪先の高さ補正を行うことで、接地時のバケット高さを正しく演算しようとしている。作業機等に設置される複数のセンサはそれぞれ異なる特有の誤差特性を有する。したがって、
図27のように補正を行った面と異なる傾斜を持つ面で作業を行う場合、フロントの姿勢(ブーム、アーム、バケットの角度)が較正時と異なるため、上下方向への補正量は当然異なるべきである。しかしながら、従来技術においては、作業機の姿勢(ブーム、アーム、及びバケットの角度)が補正時と異なる場合には対応できない。すなわち、例えば、補正の実施時に用いた基準面(平面)と異なる形状の作業面での作業を行う場合は、各センサの誤差が変化して補正値の精度が低下してしまい、作業機の姿勢を正確に演算することができない。
【0061】
これに対して本実施の形態においては、バケット6を含む複数の被駆動部材(ブーム4、アーム5、バケット6)が連結されて構成され、油圧ショベル100の上部旋回体2に垂直方向に回動可能に支持された多関節型のフロント装置1と、複数の被駆動部材4〜6のそれぞれの姿勢情報を検出する慣性計測装置14〜16と、慣性計測装置14〜16の検出結果に基づいて多関節型のフロント装置1の姿勢を演算する姿勢演算装置15aとを備え、姿勢演算装置15aによって演算された多関節型のフロント装置1の姿勢に基づいて多関節型のフロント装置1の動作を制御する油圧ショベル100において、姿勢演算装置15aは、上部旋回体2に対して相対的に定められる基準面を設定する基準面設定部152と、慣性計測装置14〜16の検出結果の較正に用いる較正パラメータθ
sbm,θ
sam,θ
sbkを演算する較正値演算部153と、慣性計測装置14〜16の検出結果と較正値演算部153の演算結果とに基づいてバケット6の上部旋回体2に対する相対位置を演算する作業位置演算部154とを備え、較正値演算部153は、複数の被駆動部材4〜6上に予め設定した基準点が基準面と一致し、かつ複数の被駆動部材4〜6の少なくとも1つの姿勢が異なる、被駆動部材4〜6の個数に対応したフロント装置1の複数の姿勢における慣性計測装置14〜16の検出結果に基づいて較正パラメータの演算を行うように較正したので、より平易な構成で作業機の高精度の姿勢演算を行うことができる。
【0062】
なお、本実施の形態においては、z軸方向の値が既知となるような基準面を設定し、z軸方向についての式(2)を用いて較正パラメータθ
sbm,θ
sam,θ
sbkを演算するように構成したが、これに限られず、例えば、x軸方向の値が既知となるような基準面を設定し、z軸方向についての式(1)を用いて較正パラメータθ
sbm,θ
sam,θ
sbkを演算するように構成してもよい。また、z軸方向及びy軸方向の値が既知となる基準位置を設定し、式(1)や式(2)を用いて較正パラメータθ
sbm,θ
sam,θ
sbkを演算するように構成してもよい。
【0063】
<第1の実施の形態の変形例>
第1の実施の形態の変形例を
図9を参照しつつ説明する。
【0064】
図9は、本変形例におけるコントローラの姿勢演算装置の処理機能を概略的に示す機能ブロック図である。図中、第1の実施の形態と同様の部材には同じ符号を付し、説明を省略する。
【0065】
本変形例は、設計情報記憶部を姿勢演算装置の外部に配置する場合を示したものである。本変形例では、
図9に示すように、姿勢演算装置15Aの外部に設計情報記憶部151aを配し、基準面設定部152、較正値演算部153、及び作業位置演算部154は、姿勢演算装置15Aから設計情報を取得する。その他の構成は第1の実施の形態と同様である。
【0066】
以上のように構成した本変形例においても、第1の実施の形態と同様の効果を得ることができる。
【0067】
また、本変形例においては、下部走行体3の履帯交換でブームフートピン高さが変化した場合や、特殊仕様のアームに交換したことでアーム長さが変化下場合に、設計情報記憶部151aを交換することによって設計情報を変更するのに好適である。
【0068】
<第1の実施の形態の他の変形例>
第1の実施の形態の他の変形例を
図10〜
図13を参照しつつ説明する。
【0069】
本変形例は、第1の実施の形態に対してz
setの設定方法を変更するものである。
【0070】
図10〜
図13は、姿勢角度を取り込む場合の基準面とフロント装置の姿勢との関係を例示する図である。
【0071】
例えば、
図10に示すように、バケット6の爪先(すなわち、基準点B)に長さH1の重り付き糸20(いわゆる、下げ振り)を取り付け、下げ振り20が垂直に伸びきり、かつ、その先端(下端)が地面と接している、つまり、基準面と一致している状態で姿勢角度θ
bm,θ
am,θ
bkを取り込んでもよい。重り付き糸20は、基準点Bから鉛直下向き方向に予め定めた距離H1だけ離れた位置を示す基準点相対指標である。
【0072】
このとき、爪先位置(基準点B)は地面(基準面)よりH1だけ高い位置にあるため、下記の式(6)が成り立つ。
【0074】
本変形例は、重り付き糸20の長さを変更することによってフロント装置1が取り得る姿勢が多くなるため、較正パラメータθ
sbm,θ
sam,θ
sbkの演算がよりに効果的になる。なお、この場合も地面の凹凸の影響を受け得るため、コンクリートや鉄板などで舗装された地面を基準面として姿勢角度θ
bm,θ
am,θ
bkの取り込みを行うことが望ましい。
【0075】
また、
図11に示すように、ブームフートピン高さの位置にレーザ発光器21を備え、ブームフートピン高さに対して水平方向に伸びるレーザ光21aを基準面とし、爪先位置(基準点B)が基準面と一致している状態で姿勢角度θ
bm,θ
am,θ
bkを取り込んでも良い。レーザ発光器21は、基準面の位置をレーザ光21aで可視的に示す基準面指標である。
【0076】
このとき、爪先位置(基準点B)はブームフートピン高さ(すなわち、フロント座標系の原点Oの高さ)と等しいため、下記の式(7)が成り立つ。
【0078】
本変形例は、地面を基準面とした場合と違い、基準面に凹凸が生じないという利点がある。
【0079】
なお、
図12のように、バケット6の爪先(すなわち、基準点B)に長さH2の下げ振り22を取り付け、下げ振り22が垂直に伸びきり、かつ、その先端(下端)が基準面(レーザ光21a)と一致している状態で姿勢角度θ
bm,θ
am,θ
bkを取り込んでも良い。
【0080】
このとき、爪先位置(基準点B)はブームフートピンの高さ(すなわち、フロント座標系の原点Oの高さ)よりH2だけ高い位置にあるため、下記の式(8)が成り立つ。
【0082】
なお、レーザ発光器21の取り付け位置はブームフートピンの高さから任意の高さに設定することができるが、この場合には、上記の式(7)及び式(8)の右辺に、ブームフートピン(フロント座標系の原点O)からのレーザ発光器21の取り付け高さを加算すれば良い。
【0083】
また、
図13に示すように、ブームフートピンの高さの位置から予め定めた高さだけ下方の位置に、基準部材23a,23b間に水平に張った水糸23を配置し、この水糸23を基準面として、爪先位置(基準点B)が基準面と一致している状態で姿勢角度θ
bm,θ
am,θ
bkを取り込んでも良い。
【0084】
このとき、基準面(水糸23)及び爪先位置(基準点B)は、フロント座標系の原点OよりH3だけ低い位置にあるため、下記の式(9)が成り立つ。
【0086】
本変形例においても、地面を基準面とした場合と違い、基準面に凹凸が生じないという利点がある。
【0087】
<第2の実施の形態>
第2の実施の形態を
図14を参照しつつ説明する。
【0088】
本実施の形態は、第1の実施の形態における油圧ショベル100が傾斜面に配置され、この傾斜面を基準面とする場合を示すものである。
【0089】
図14は、本実施の形態のフロント座標系と油圧ショベルとの関係を模式的に示す側面図である。図中、第1の実施の形態と同様の部材には同じ符号を付し、説明を省略する。
【0090】
図14に示すように、油圧ショベル100が上部旋回体2の前方(すなわち、フロント装置1側)に向かって高くなるようにθ
slopeだけ傾斜する傾斜面に配置され、基準面設定部152(傾斜基準面演算部)によりこの傾斜面を基準面とする場合、ほぼ水平な地面を基準面とした場合と比較して、フロント座標系は原点Oを中心にθ
slopeだけ回転する。このとき、慣性計測装置14〜16により検知される重力加速度の方向(つまり、鉛直下向き方向)もフロント座標系において(−θ
slope)だけ回転するため、車体慣性計測装置12で計測される上部旋回体2(車体)の傾きθ
slopeを用い、フロント座標系における基準点Bを与える式(2)及び式(3)について、以下の式(10)により調整を行う。
【0092】
ここで、上記の式(10)において、調整前のフロント座標系の座標を(x,z)、調整後のフロント座標系の座標を(x1,z1)とする。
【0093】
その他の構成は第1の実施の形態と同様である。
【0094】
以上のように構成した本実施の形態においても第1の実施の形態と同様の効果を得ることができる。
【0095】
また、油圧ショベル100が傾斜面に配置されて作業を行う場合にも、較正パラメータθ
sbm,θ
sam,θ
sbkを演算することができ、フロント座標系におけるバケット6の爪先位置(基準点B)を適正に算出して作業を行うことができる。
【0096】
<第3の実施の形態>
第3の実施の形態を
図15〜
図19を参照しつつ説明する。
【0097】
本実施の形態は、複数の較正パラメータθ
sbm,θ
sam,θ
sbkのうちの1つが対応する被駆動部材を、対応する較正パラメータθ
sが0に近いと推定できる姿勢(つまり、誤差が生じにくいと考えられる姿勢)にした状態で、他の被駆動部材の較正パラメータθ
sを演算し、その後、演算していない1つの被駆動部材の較正パラメータθ
sを演算することにより、較正パラメータθ
sの精度を高めたものである。
【0098】
図15は、本実施の形態における姿勢演算処理を示すフローチャートである。また、
図16〜
図19は、基準面に対するバケットの姿勢の例をそれぞれ示す図である。
【0099】
図15において、まず、バケットシリンダ6aを延ばしきった、又は縮めきったバケットエンド姿勢をとる(ステップS200)。なお、このときのバケット6の姿勢は、較正パラメータθ
sbkが0に近いと推定できる姿勢(つまり、誤差が生じにくいと考えられる姿勢)にした状態であれば良い。
【0100】
この状態で、作業具(バケット6)の基準点Bを基準面に合わせ、演算姿勢設定部18を操作することにより、この姿勢での姿勢データとして姿勢角度θ
bm,θ
amを取り込んで、較正値演算部153内の図示しない記憶部に記憶する(ステップS210)。バケットエンド姿勢でのバケット6の姿勢角度をθ
endbkとすると、基準点Bのフロント座標系における高さは、下記の式(11)により与えられる。
【0102】
続いて、フロント装置1の2姿勢以上において姿勢データを取得したかどうかを判定し(ステップS220)、判定結果がNOの場合には、バケットエンド姿勢を保ちながらフロント装置1のブーム4とアーム5の姿勢を、姿勢データを取得していない他の姿勢に変更し(ステップS211)、ステップS210,S220の処理を繰り返す。また、ステップS220での判定結果がYESの場合には、姿勢データの取得を終了するかどうかを判定する(ステップS230)。ステップS230での判定結果がNOの場合には、ステップS211及びステップS210の処理を繰り返す。また、ステップS230での判定結果がYESの場合には、得られた姿勢角度θ
bm,θ
am、及び姿勢角度θ
endbkを用いて式(10)に係る連立方程式を立て、較正パラメータθ
sbm,θ
samを演算し、較正値演算部153内に記憶するとともに、作業位置演算部154に演算結果を出力する(ステップS240)。
【0103】
続いて、バケット6を含めてフロント装置1の姿勢を変更し(ステップS250)、作業具(バケット6)の基準点Bを基準面に合わせ、演算姿勢設定部18を操作することにより、この姿勢での姿勢データとして姿勢角度θ
bm,θ
am,θ
bkを取り込んで、較正値演算部153内の図示しない記憶部に記憶する(ステップS260)。
【0104】
ここで、ステップS240で演算されたブーム4及びアーム5の較正パラメータをθ
setbm,θ
setamとすると、基準点Bのフロント座標系における高さは、下記の式(12)により与えられる。
【0106】
続いて、姿勢データの取得を終了するかどうかを判定する(ステップS270)。ステップS270での判定結果がNOの場合には、ステップS250,S260の処理を繰り返す。また、ステップS270での判定結果がYESの場合には、得られた姿勢角度θ
bm,θ
am,θ
bkを用いて式(12)に係る連立方程式を立て、較正パラメータθ
sbkを演算し、較正値演算部153内に記憶するとともに、作業位置演算部154に演算結果を出力し(ステップS280)、処理を終了する。
【0107】
なお、ステップS250,S260の処理は、1回以上行えば較正パラメータθ
sbkの演算が可能であるが、例えば、
図16〜
図19に示すように、バケット6の姿勢を変化させて複数の姿勢角度θ
bkを取得することにより、較正パラメータθ
sbkの精度を高めることができる。なお、
図16〜
図19においては、基準面に爪先(基準点B)を合わせた姿勢のバケット6のみを図示しており、アーム5等の他の構成については図示を省略している。
【0108】
その他の構成は第1の実施の形態と同様である。
【0109】
以上のように構成した本実施の形態においても第1の実施の形態と同様の効果を得ることができる。
【0110】
また、第1の実施の形態においては、ブーム4、アーム5、及びバケット6の較正パラメータを同時に計算したが、各慣性計測装置14〜16のセンサオフセット(較正パラメータθ
sbm,θ
sam,θ
sbk)を厳密に合わせることはできない。たとえば、バケット6のセンサのオフセット(較正パラメータθ
sbk)によって、爪先位置(基準点B)の高さがL
bksinθ
sbkだけ変化した分がブーム4及びアーム5のセンサオフセット(較正パラメータθ
sbm,θ
sam)による爪先位置(基準点B)の高さの変化量L
bmsinθ
sbm+L
amsinθ
samで打ち消されることも考えられる。このような現象は、姿勢角度θ
bm,θ
am,θ
bkの取得時に採用しなかったフロント装置1の姿勢における作業具の基準点の位置の推定精度の低下を招き得る。
【0111】
本実施の形態は、第1の実施の形態における上記現象を考慮してなされたものである。すなわち、上記の式(11)は、ブーム4及びアーム5の較正パラメータθ
sbm,θ
samのみを未知変数として含んでおり、かつ、バケット6の姿勢角度はθ
endbkで一定とすることができるので、第1の実施の形態のようにバケット6のセンサオフセット(較正パラメータθ
sbk)の影響をブーム4のセンサオフセット(較正パラメータθ
sbm)及びアーム5のセンサオフセット(較正パラメータθ
sam)に含みにくく、姿勢角度θ
bm,θ
am,θ
bkの取得時に採用しなかったフロント装置1の姿勢における作業具の基準点の位置の推定精度の低下を抑制することができる。
【0112】
<第4の実施の形態>
第4の実施の形態を
図20〜
図25を参照しつつ説明する。
【0113】
本実施の形態は、フロント装置1を構成する複数の被駆動部材4〜6の各連結部及び基準点(又は、連結部又は基準点に設けた基準点相対指標である下げ振り)を基準面に一致させた姿勢でそれぞれ姿勢角度を取得して較正パラメータを演算することにより、他のセンサオフセットの影響を受けにくくし、較正パラメータの精度を高めたものである。
【0114】
図20は、本実施の形態における姿勢演算処理を示すフローチャートである。また、
図21〜
図23は、被駆動部材の各連結部及び基準点を基準面に一致させた姿勢を示す図であり、
図21はブーム先端を基準面に合わせた姿勢を、
図22はアーム先端を基準面に合わせた姿勢を、
図23はバケット先端を基準面に合わせた姿勢をそれぞれ示す図である。
【0115】
本実施の形態では、ブームフートピン高さの位置にレーザ発光器21を備え、ブームフートピン高さに対して水平方向に伸びるレーザ光21aを基準面としている。
【0116】
図20において、まず、ブーム4の先端(ブーム4とアーム5の連結部)を基準面に合わせ(
図21参照)、演算姿勢設定部18を操作することにより、この姿勢での姿勢データとして姿勢角度θ
bmを取り込んで、較正値演算部153内の図示しない記憶部に記憶する(ステップS310)。このとき、ブーム4の先端のフロント座標系における高さz
aは、下記の式(13)により与えられる。
【0118】
なお、基準面の高さはフロント座標系の原点Oの高さと同じであるので、z
a=0(ゼロ)である。
【0119】
続いて、姿勢データの取得を終了するかどうかを判定する(ステップS320)。ステップS320での判定結果がNOの場合には、ブーム4の姿勢を、姿勢データを取得していない他の姿勢に変更し(ステップS311)、ステップS310の処理を繰り返す。なお、ブーム4の先端を基準面に合わせる場合は1姿勢しか取れないため、ブーム4の先端に既知の長さの下げ振りを設け、この下げ振りを基準面に合わせることにより、姿勢データの取得を行う。なお、当然ながら、この場合には、z
aの値を下げ振りの長さに合わせて調整する。
【0120】
また、ステップS320での判定結果がYESの場合には、得られた姿勢角度θ
bmを用いて式(13)から較正パラメータθ
sbmを演算し、較正値演算部153内に記憶するとともに、作業位置演算部154に演算結果を出力する(ステップS330)。
【0121】
続いて、アーム5の先端(アーム5とバケット6の連結部)を基準面に合わせ(
図22参照)、演算姿勢設定部18を操作することにより、この姿勢での姿勢データとして姿勢角度θ
amを取り込んで、較正値演算部153内の図示しない記憶部に記憶する(ステップS340)。このとき、アーム5の先端のフロント座標系における高さz
aは、ステップS330で得られたブーム4の較正パラメータをθ
setbmとすると、下記の式(14)により与えられる。
【0123】
続いて、姿勢データの取得を終了するかどうかを判定する(ステップS350)。ステップS350での判定結果がNOの場合には、ブーム4及びアーム5の姿勢を、姿勢データを取得していない他の姿勢に変更し(ステップS341)、ステップS340の処理を繰り返す。また、ステップS320での判定結果がYESの場合には、得られた姿勢角度θ
bm,θ
amを用いて式(13)から較正パラメータθ
samを演算し、較正値演算部153内に記憶するとともに、作業位置演算部154に演算結果を出力する(ステップS360)。
【0124】
続いて、バケット6の先端(基準点B)を基準面に合わせ(
図23参照)、演算姿勢設定部18を操作することにより、この姿勢での姿勢データとして姿勢角度θ
bm,θ
am,θ
bkを取り込んで、較正値演算部153内の図示しない記憶部に記憶する(ステップS370)。このとき、バケット6の先端(基準点B)のフロント座標系における高さz
setは、ステップS330,S360で得られたブーム4及びアーム5の較正パラメータをそれぞれθ
setbm及びθ
setamとすると、前述の式(12)により与えられる。
【0125】
続いて、姿勢データの取得を終了するかどうかを判定する(ステップS380)。ステップS380での判定結果がNOの場合には、フロント装置1の姿勢を、姿勢データを取得していない他の姿勢に変更し(ステップS371)、ステップS370の処理を繰り返す。また、ステップS380での判定結果がYESの場合には、得られた姿勢角度θ
bm,θ
am,θ
bkを用いて式(11)から較正パラメータθ
skmを演算し、較正値演算部153内に記憶するとともに、作業位置演算部154に演算結果を出力する(ステップS390)。
【0126】
なお、ステップS310,S340,S370の処理は、それぞれ1回以上行えば較正パラメータθ
sbm,θ
sam,θ
sbkの演算が可能であるが、被駆動部材4〜6の姿勢を変化させて複数の姿勢角度θ
bm,θ
am,θ
bkを取得することにより、較正パラメータθ
sbm,θ
sam,θ
sbkの精度を高めることができる。
【0127】
その他の構成は第1の実施の形態と同様である。
【0128】
以上のように構成した本実施の形態においても第1の実施の形態と同様の効果を得ることができる。
【0129】
また、第2の実施の形態においては、ブーム4及びアーム5とバケット6との相互作用の影響を緩和しきれない場合が考えられるが、本実施の形態においては、ブーム4、アーム5、及びバケット6の較正パラメータをそれぞれ個別に演算するので、広範囲における姿勢推定精度の向上が期待できる。
【0130】
なお、本実施の形態においては、較正パラメータθ
sbm,θ
sam,θ
sbkを一定値で与えることを前提とした場合を説明をしたが、例えば、
図24及び
図25に示すように、各慣性計測装置14〜16の検出値と較正パラメータθ
sbm,θ
sam,θ
sbkの関係を示す較正テーブルを作成し、各慣性計測装置14〜16の検出値に応じて較正パラメータを決定するように構成しても良い。すなわち、本実施の形態のように、ブーム4、アーム5、及びバケット6それぞれの較正パラメータθ
sbm,θ
sam,θ
sbkを個別に演算できる場合には、
図24及び
図25に示した較正テーブルを作成することができる。そして、そのように構成することにより、より高精度な姿勢推定の実現を期待できる。なお、
図24及び
図25におけるプロット点は、各姿勢で得られた較正パラメータを示しており、
図24ではこの較正パラメータを区間ごとに線形補間した場合を、
図25では取り得る角度区間全域でスムージングを行った場合を示している。
【0131】
次に上記の各実施の形態の特徴について説明する。
【0132】
(1)上記の実施の形態では、作業具(例えば、バケット6)を含む複数の被駆動部材(例えば、ブーム4、アーム5、バケット6)が連結されて構成され、建設機械(例えば、油圧ショベル100)の車体(例えば、上部旋回体2)に垂直方向に回動可能に支持された多関節型のフロント作業機1と、前記複数の被駆動部材のそれぞれの姿勢情報を検出する姿勢情報検出装置(例えば、慣性計測装置14〜16)と、前記姿勢情報検出装置の検出情報に基づいて前記多関節型のフロント作業機の姿勢を演算するフロント姿勢演算装置(例えば、姿勢演算装置154)とを備え、前記フロント姿勢演算装置によって演算された前記多関節型のフロント作業機の姿勢に基づいて前記多関節型のフロント作業機の動作を制御する建設機械において、前記フロント姿勢演算装置は、前記車体に対して相対的に定められる基準位置(例えば、基準面)を設定する基準位置設定部(例えば、基準面設定部152)と、前記姿勢情報検出装置の検出情報の較正に用いる較正パラメータを演算する較正値演算部153と、前記姿勢情報検出装置の検出情報と前記較正値演算部の演算結果とに基づいて前記作業具の前記車体に対する相対位置を演算する作業位置演算部154とを備え、前記較正値演算部は、前記複数の被駆動部材上に予め設定した基準点が前記基準位置設定部により設定された基準位置と一致し、かつ前記複数の被駆動部材の少なくとも1つの姿勢が異なる、前記被駆動部材の個数に対応した前記フロント作業機の複数の姿勢における前記姿勢情報検出装置の検出情報に基づいて前記較正パラメータの演算を行うものとした。
【0133】
このように構成することにより、より平易な構成で作業機の高精度の姿勢演算を行うことができる。
【0134】
(2)また、上記の実施の形態では、(1)の建設機械において、前記基準位置設定部は、前記基準位置として水平面と平行な基準面を設定し、前記較正値演算部は、前記複数の被駆動部材上に予め設定した基準点が前記基準面上の何れかの位置と一致し、かつ前記複数の被駆動部材の少なくとも1つの姿勢が異なる、前記被駆動部材の個数に対応した前記フロント作業機の複数の姿勢における前記姿勢情報検出装置の検出情報とに基づいて前記較正パラメータの演算を行うものとした。
【0135】
このように、基準位置を水平面と平行な基準面を設定することにより、被駆動部材の基準点を基準位置(基準面)に容易に合わせることができ、姿勢演算を容易に行うことができる。
【0136】
(3)また、上記の実施の形態では、(2)の建設機械において、前記車体の水平面に対する傾斜角度を検出する車体傾斜検出部と、前記車体傾斜検出部で検出された車体の傾斜角度に基づいて、前記基準面を傾斜させた傾斜基準面を演算する傾斜基準面演算部とを備え、前記較正値演算部は、前記複数の被駆動部材上に予め設定した基準点が前記傾斜基準面上の何れかの位置と一致し、かつ前記複数の被駆動部材の少なくとも1つの姿勢が異なる、前記被駆動部材の個数に対応した前記フロント作業機の複数の姿勢における前記姿勢情報検出装置の検出情報とに基づいて前記較正パラメータの演算を行うものとした。
【0137】
これにより、油圧ショベル100が傾斜面に配置されて作業を行う場合にも、較正パラメータθ
sbm,θ
sam,θ
sbkを演算することができ、フロント座標系におけるバケット6の爪先位置(基準点B)を適正に算出して作業を行うことができる。
【0138】
(4)また、上記の実施の形態では、(2)の建設機械において、前記基準面の位置を可視的に示す基準面指標(例えば、レーザ光21a)に前記複数の被駆動部材上に予め設定した基準点を一致させることによって、前記基準点を前記基準面上の位置と一致させるものとした。
【0139】
これにより、レーザ光21aを照射するレーザ発光器21の取り付け位置を任意の高さに設定することができるので、基準面(レーザ光21a)を任意の高さに設定することができる。また、レーザ光21aは直進性が高いため、基準面に凹凸が生じない。
【0140】
(5)また、上記の実施の形態では、(1)の建設機械において、前記較正値演算部は、前記複数の被駆動部材上に予め設定した基準点から鉛直下向き方向に予め定めた距離だけ離れた位置を示す基準点相対指標が前記基準位置と一致し、かつ前記複数の被駆動部材の少なくとも1つの姿勢が異なる、前記被駆動部材の個数に対応した前記フロント作業機の複数の姿勢における前記姿勢情報検出装置の検出情報に基づいて前記較正パラメータの演算を行うものとした。
【0141】
これにより、下げ振り20の長さを変更することによってフロント装置1が取り得る姿勢が多くなるため、較正パラメータθ
sbm,θ
sam,θ
sbkの演算がよりに効果的になる。
【0142】
(6)また、上記の実施の形態では、(1)の建設機械において、前記較正値演算部は、前記姿勢情報検出装置の検出情報を入力とし、前記較正値演算部の演算結果である前記較正パラメータを出力とする較正パラメータテーブルを作成し、前記作業位置演算部は、前記姿勢情報検出装置の検出情報と、前記姿勢情報検出装置の検出情報に基づいて前記較正パラメータテーブルから出力された前記較正パラメータとに基づいて前記複数の被駆動部材の前記車体に対する相対位置を演算するものとした。
【0143】
<付記>
なお、上記の実施の形態においては、エンジン等の原動機で油圧ポンプを駆動する一般的な油圧ショベルを例に挙げて説明したが、油圧ポンプをエンジン及びモータで駆動するハイブリッド式の油圧ショベルや、油圧ポンプをモータのみで駆動する電動式の油圧ショベル等にも本発明が適用可能であることは言うまでもない。
【0144】
また、本発明は上記の実施の形態に限定されるものではなく、その要旨を逸脱しない範囲内の様々な変形例や組み合わせが含まれる。また、本発明は、上記の実施の形態で説明した全ての構成を備えるものに限定されず、その構成の一部を削除したものも含まれる。また、上記の各構成、機能等は、それらの一部又は全部を、例えば集積回路で設計する等により実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。