(57)【要約】【課題】作業機の姿勢に起因する位置情報の精度劣化を防ぐ作業機械を提供する。【解決手段】作業機械に備えられる測位装置は、第１アンテナと第２アンテナとを結んだ基線ベクトルを算出する基線ベクトル算出部と、基準局からの補正信号と第１アンテナで受信される衛星電波から第１アンテナの位置を算出する位置算出部とを有し、作業機が衛星からの電波を遮蔽しているか否かを各アンテナごとに判定し、第１アンテナのみで遮蔽されたと判定された衛星に対し、基準局、各アンテナに関する搬送波位相バイアスを用いて、衛星から基準局まで、第２アンテナまでの各距離の差である補完搬送波位相バイアスを求める係数を導出し、この係数を用いて第１アンテナの位置を算出し、ここで算出された第１アンテナの位置と位置算出部で算出される第１アンテナの位置とで高い精度の方を制御コントローラへ出力する。【選択図】図２
2020008286.tif 000002
【特許請求の範囲】
【請求項１】
車体と、前記車体に備えられ当該車体とは別に動作する作業機と、前記作業機を操作する作業機操作装置と、前記車体および前記作業機の動作を制御する制御コントローラと、前記車体の姿勢を計測する車体姿勢計測装置と、前記作業機の姿勢を計測する作業機姿勢計測装置と、複数の衛星からの電波を受信する、２以上の複数のアンテナと、基準局から送信される各衛星の補正信号を受信する補正信号受信装置と、前記複数のアンテナと前記補正信号受信装置とに接続され、前記衛星からの電波および前記補正信号とに基づき位置を特定する測位装置と、を備える作業機械であって、
前記測位装置は、
前記複数のアンテナの中の第１アンテナと第２アンテナとを結んだ基線ベクトルを算出する基線ベクトル算出部と、
前記補正信号受信装置で受信される前記基準局からの補正信号と、前記第１アンテナで受信される衛星電波から、前記第１アンテナの位置を算出する位置算出部と、
前記作業機操作装置からの指令によって動作する前記作業機が、衛星からの電波を遮蔽しているか否かを、前記車体姿勢計測装置と前記作業機姿勢計測装置とから得られる各計測値に基づき、各アンテナごとに判定する電波遮蔽判定部と、
前記位置算出部が用いる第１アンテナにおいて電波を受信した衛星と、前記基準局が送信する補正信号に含まれる衛星との、共通の衛星のうち、前記電波遮蔽判定部で前記第１アンテナにて電波が遮蔽されていないと判定された衛星を選択する第一の共通衛星選択部と、
前記基線ベクトル算出部が用いる前記第１アンテナにて電波を受信した衛星と、前記第２アンテナにて電波を受信した衛星との共通の衛星のうち、前記電波遮蔽判定部で前記第１アンテナにて電波が遮蔽されており、かつ前記第２アンテナで電波が遮蔽されていないと判定された衛星を選択する第二の共通衛星選択部と、
前記第一の共通衛星選択部および前記第二の共通衛星選択部で選択された衛星のすべてに対し、前記位置算出部での処理に伴い導出される搬送波位相バイアスであり衛星から前記基準局までにおける基準局搬送波位相バイアス、当該衛星から前記第１アンテナまでにおける第１搬送波位相バイアス、および、前記基線ベクトル算出部での処理に伴い導出される搬送波位相バイアスであり当該衛星から前記第２アンテナまでにおける第２搬送波位相バイアスを用いて、当該衛星から前記基準局までの距離と当該衛星から前記第２アンテナまでの距離との航路差の搬送波位相バイアスである補完搬送波位相バイアスを求めるための係数を導出する補完搬送波位相バイアス決定部と、
前記補完搬送波位相バイアス決定部で導出された前記係数と、前記第一の共通衛星選択部で選択された衛星および前記第二の共通衛星選択部で選択された衛星の電波とから、前記第１アンテナの位置を算出する補完位置算出部と、
前記位置算出部で算出される前記第１アンテナの位置と、前記補完位置算出部で算出される前記第１アンテナの位置とで算出精度を比較し、高い精度の方を選択して前記制御コントローラへ各アンテナの位置を出力する位置出力部と、
を有する作業機械。
【請求項２】
請求項１に記載の作業機械において、
前記電波遮蔽判定部は、前記作業機が操作されることにより動作する前記作業機の姿勢で最も高さ方向において高い点、および前記作業機の幅から、前記作業機による遮蔽範囲を計算し、前記衛星の位置と前記遮蔽範囲との重なりにより、前記衛星からの電波が遮蔽されているかを判定することを特徴とする作業機械。
【請求項３】
請求項１に記載の作業機械において、
前記補完搬送波位相バイアス決定部は、前記作業機による遮蔽のない時間における前記基準局搬送波位相バイアスと前記第１搬送波位相バイアスとの差分の搬送波位相バイアス、および前記第１搬送波位相バイアスと前記第２搬送波位相バイアスとの差分の搬送波位相バイアスから、前記補完搬送波位相バイアスを決定するための係数を算出し、
前記補完位置算出部は、前記作業機による遮蔽が起こった衛星からの電波に対して、前記係数を用いて前記補完搬送波位相バイアスを計算することを特徴とする作業機械。
【請求項４】
請求項１に記載の作業機械において、
前記補完位置算出部は、一定時間以上、前記電波遮蔽判定部で遮蔽されていると判定された衛星の搬送波位相を除外して、補完搬送波位相バイアスを計算し、当該補完搬送波位相バイアスを用いた観測方程式を用いて測位演算することを特徴とする作業機械。
【請求項５】
請求項１に記載の作業機械において、
前記補完位置算出部は、前記位置算出部にて算出された第１アンテナの位置について、前記電波遮蔽判定部で遮蔽されていると判定された衛星の搬送波位相に誤差を含めて設定し、
前記位置出力部は、前記誤差を含めた状態で、前記算出精度を比較することを特徴とする作業機械。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、鉱山や建設現場内を移動する作業機械の位置を算出する技術に関する。
【背景技術】
【０００２】
計画された図面を基に掘削する作業機械において、その位置を算出する機能は重要な機能の一つである。この位置算出機能は、全地球航法衛星システム（ＧＮＳＳ）や、慣性計測装置（ＩＭＵ）など車体の姿勢を計測する姿勢計測装置等の多数の計測装置の結果を用いて、作業機械の位置を算出する。ＩＣＴ（Information and Communication Technology）施工向けショベルのように、対象となる車体の位置だけではなく車体の方向を精度よく知ることが必要な場合は、二つのＧＮＳＳアンテナを用いてその基線ベクトル方向を出力し、また作業機械の位置として、これら二つのＧＮＳＳアンテナのいずれか一方の位置を出力する。
【０００３】
このＧＮＳＳアンテナは遥か上空のＧＮＳＳ衛星からの信号を受信するため、アンテナ上部を遮るものが無いことが望ましい。しかし、ショベルのような作業機械の場合、作業機が掘削や積込作業などにより変形し、アンテナよりも上部に伸びることも少なくない。このように作業機が衛星からの電波を遮ると、位置推定精度が低下してしまい、ＩＣＴ施工向けショベルにおいては、制御の停止やガイダンス停止に繋がる。よって、ショベルの動作や状態にかかわらず、位置推定精度を維持するため、衛星からの信号が遮られることによる位置精度低下を防ぐことが求められている。
【０００４】
従来、このような車体等による電波の遮蔽に対して以下のような技術が公開されている。特許文献１には、衛星位置と船体の動作によって、どの衛星の電波が遮蔽されるかをマッピングすることで、観測可能な衛星のみを用いる技術が公開されている。ただし、この方法は船の航路のようにどの場所をいつ通過するかなどの経路および時刻が決定されている必要がある。
【０００５】
また、特許文献２、特許文献３、特許文献４には、複数のアンテナを搭載して、電波（電界）強度、衛星数などにより位置算出に使用するアンテナを切り替える方法が公開されている。ただし、これらの方法では、搬送波位相を用いた精度の高い位置を算出する場合、複数のアンテナで、それぞれにおいて位置算出計算をする必要があり、一つのＧＮＳＳ受信機では実現が難しく、複数のＧＮＳＳ受信機を搭載する必要がある。
【０００６】
また特許文献５には、搬送波位相を用いた測位計算に用いる衛星の組み合わせの変化を予測し、現在使用している第一の搬送波位相バイアス（搬送波位相バイアスのことを整数値バイアス、アンビギュイティともいう）の他に、次の衛星の組み合わせによる第二の搬送波位相バイアスを決定しておき、衛星の組み合わせが変わったところで第二の搬送波位相バイアスを用いる手法が開示されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１５−２４９３号公報
【特許文献２】特許第３０２０２５５号公報
【特許文献３】特開平０６−６１９７９号公報
【特許文献４】特開２００９−１８６４１５号公報
【特許文献５】特開２０１７−１９８５３１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
従来の手法では、作業機械のように、どの場所をどの方向を向いて通過するかがわからない対象に対して、一つのＧＮＳＳ受信機を用いて、搬送波位相を用いた高精度な測位計算をする場合、搬送波位相バイアスの決定に時間がかかる。また作業機の上下運動のように、作業機が頻繁に衛星からの電波を遮蔽する場合、搬送波位相の円滑な切り替えが困難であり、位置推定精度が低下する。
【０００９】
本発明は、上記課題を鑑みてなされたものであり、作業機の動作や姿勢に起因する位置情報の精度劣化を防ぐ技術を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記課題を解決するために、代表的な作業機械は、車体と、前記車体に備えられ当該車体とは別に動作する作業機と、前記作業機を操作する作業機操作装置と、前記車体および前記作業機の動作を制御する制御コントローラと、前記車体の姿勢を計測する車体姿勢計測装置と、前記作業機の姿勢を計測する作業機姿勢計測装置と、複数の衛星からの電波を受信する、２以上の複数のアンテナと、基準局から送信される各衛星の補正信号を受信する補正信号受信装置と、前記複数のアンテナと前記補正信号受信装置とに接続され、前記衛星からの電波および前記補正信号とに基づき位置を特定する測位装置と、を備える作業機械であって、前記測位装置は、前記複数のアンテナの中の第１アンテナと第２アンテナとを結んだ基線ベクトルを算出する基線ベクトル算出部と、前記補正信号受信装置で受信される前記基準局からの補正信号と、前記第１アンテナで受信される衛星電波から、前記第１アンテナの位置を算出する位置算出部と、前記作業機操作装置からの指令によって動作する前記作業機が、衛星からの電波を遮蔽しているか否かを、前記車体姿勢計測装置と前記作業機姿勢計測装置とから得られる各計測値に基づき、各アンテナごとに判定する電波遮蔽判定部と、前記位置算出部が用いる第１アンテナにおいて電波を受信した衛星と、前記基準局が送信する補正信号に含まれる衛星との、共通の衛星のうち、前記電波遮蔽判定部で前記第１アンテナにて電波が遮蔽されていないと判定された衛星を選択する第一の共通衛星選択部と、前記基線ベクトル算出部が用いる前記第１アンテナにて電波を受信した衛星と、前記第２アンテナにて電波を受信した衛星との共通の衛星のうち、前記電波遮蔽判定部で前記第１アンテナにて電波が遮蔽されており、かつ前記第２アンテナで電波が遮蔽されていないと判定された衛星を選択する第二の共通衛星選択部と、前記第一の共通衛星選択部および前記第二の共通衛星選択部で選択された衛星のすべてに対し、前記位置算出部での処理に伴い導出される搬送波位相バイアスであり衛星から前記基準局までにおける基準局搬送波位相バイアス、当該衛星から前記第１アンテナまでにおける第１搬送波位相バイアス、および、前記基線ベクトル算出部での処理に伴い導出される搬送波位相バイアスであり当該衛星から前記第２アンテナまでにおける第２搬送波位相バイアスを用いて、当該衛星から前記基準局までの距離と当該衛星から前記第２アンテナまでの距離との航路差の搬送波位相バイアスである補完搬送波位相バイアスを求めるための係数を導出する補完搬送波位相バイアス決定部と、前記補完搬送波位相バイアス決定部で導出された前記係数と、前記第一の共通衛星選択部で選択された衛星および前記第二の共通衛星選択部で選択された衛星の電波とから、前記第１アンテナの位置を算出する補完位置算出部と、前記位置算出部で算出される前記第１アンテナの位置と、前記補完位置算出部で算出される前記第１アンテナの位置とで算出精度を比較し、高い精度の方を選択して前記制御コントローラへ各アンテナの位置を出力する位置出力部と、を有する。
【発明の効果】
【００１１】
作業機械における作業機の動作や姿勢に起因した位置情報の精度劣化を防ぎ、制御やガイダンスが停止することを低減させ、また滑らかに動作させることができる。
上記した以外の課題、構成および効果は、以下の実施形態の説明により明らかにされる。
【図面の簡単な説明】
【００１２】
【図１】実施形態における作業機械（ショベル）の概略構成を示す図である。
【図２】実施形態におけるショベルの構成を示すブロック図である。
【図３】基準局と第１アンテナとの相対位置計算を説明するための図である。
【図４】第１アンテナと第２アンテナとの相対位置計算を説明するための図である。
【図５】第１アンテナからの作業機方向の視線を例示する図であり、作業機による遮蔽を例示した図である。
【図６】測位装置の処理例を示したフローチャートである。
【図７】基準局と第１アンテナ間の搬送波位相バイアステーブルを例示した図である。
【図８】第１アンテナと第２アンテナ間の搬送波位相テーブルを例示した図である。
【図９】遮蔽フラグテーブルを例示した図である。
【図１０】電波遮蔽判定部の処理例を示したフローチャートである。
【図１１】作業機を例示した図であり、各部位の長さを例示した図である。
【図１２】作業機による衛星の遮蔽を説明するための図であり、ショベルを横から見た場合の図である。
【図１３】作業機による衛星の遮蔽を説明するための図であり、ショベルを上から見た場合の図である。
【図１４】補完搬送波位相バイアスの算出を説明するための図である。
【図１５】補完搬送波位相バイアステーブルを例示した図である。
【図１６】実施形態の測位装置のハードウェア構成例を示す図である。
【発明を実施するための形態】
【００１３】
以下、作業機械がその位置を安定して算出し、制御するための処理について説明する。以下の実施形態では、作業機械の一つとして特にショベルを例に挙げて説明する。
【００１４】
図１に本実施形態の代表的な構成例を示す。本実施形態では、ＧＮＳＳ（Global Navigation Satellite System）衛星１０１からの衛星電波を受信する第１アンテナ１１１および第２アンテナ１１２の二つのアンテナを用いて、位置および車体の向きを計測することができる測位装置１１３が車体１２１に搭載されている作業機械を例に挙げる。
【００１５】
作業機械であるショベル１は、大きく分けると掘削などをする作業機１２２と、移動のための走行や旋回をする車体１２１とで構成される。車体１２１は、移動をするための下部走行体１２４と、移動を伴わずに下部走行体１２４の上側で旋回のみをする上部旋回体１２３の二つで構成される。
【００１６】
地球のはるか上空に存在する複数のＧＮＳＳ衛星１０１から電波を受信し、補正信号を生成して当該補正信号を無線通信にて配信する基準局１０２が、ショベル１とは別に存在する。基準局１０２は、その正規位置が既知となっており、基準局１０２の正規の位置座標とＧＮＳＳ衛星１０１から得られた位置座標との差分データを含めて補正信号を生成する。
【００１７】
ショベル１の車体１２１に備えられている補正信号受信装置１１４は、基準局１０２で生成された補正信号を受信する無線受信装置である。またショベル１の車体１２１に備えられている測位装置１１３は、補正信号受信装置１１４および第１アンテナ１１１、第２アンテナ１１２と繋がっている装置であり、受信機に相当する。測位装置１１３は、ＧＮＳＳ衛星１０１からの電波および補正信号に基づき、ショベル１の現在位置を特定する。
【００１８】
ショベル１は、下部走行体１２４に対する上部旋回体１２３の旋回角度を検出するセンサや傾斜角度センサなど、車体姿勢を計測するセンサ群である車体姿勢計測装置１１５を備えている。以後、「車体姿勢」とは、上部旋回体１２３の方向および重力方向（高さ方向）に対する傾きを表わすこととする。またショベル１には、作業機１２２の上げ下げなどを操作する作業機操作装置１１６、車体１２１および作業機１２２の動作を制御する制御コントローラ１１７がある。作業機操作装置１１６は、オペレータが作業機１２２を操作するための操作レバーでもよく、制御コントローラ１１７からの制御信号を入力して作業機１２２の動作を自律的に制御する機器であってもよい。
【００１９】
作業機１２２には、作業機１２２の姿勢を計測するセンサ群である作業機姿勢計測装置１１８がある。作業機姿勢計測装置１１８は、後述する図１１で例示するブーム、アーム、バケットなど、作業機１２２を構成する各部位の回転角度を計測する。作業機姿勢計測装置１１８により、例えば、車体１２１に対するブームの回転角度、ブームに対するアームの回転角度、アームに対するバケットの回転角度などを得ることができる。
【００２０】
測位装置１１３と各計測装置とは、車載ネットワーク（ＣＡＮ）などでデータ通信が可能であるものとする。
【００２１】
次に、本実施形態における位置精度を維持するための処理の流れについて、図２を使って説明する。尚、測位装置１１３は、後述の図１６に示すとおり、演算処理装置、主記憶装置、補助記憶装置、センサからの計測値を入力するインターフェイス端子を含み、これらが通信バスで接続されているコンピュータ構成となっている。図２に示す測位装置１１３内部の各ブロックは、補助記憶装置に事前に記憶されているプログラムが、演算処理装置により主記憶装置に展開され、実行されることで機能する機能ブロックである。尚、一部の機能や全ての機能をＡＳＩＣ（Application Specific Integrated Circuit）などの集積回路で実装してもよい。
【００２２】
（前提技術の説明）
ここで、まずは前提技術を用いた処理の流れについて説明する。前提技術における測位装置１１３は、第１アンテナ１１１の位置を算出する位置算出部２０１を有する。また前提技術における測位装置１１３は、上部旋回体１２３の方向を算出するため、第１アンテナ１１１と第２アンテナ１１２との基線ベクトルを算出する基線ベクトル算出部２０２を有する。以下では、例として位置算出部２０１が位置算出を終了した後に、基線ベクトル算出部２０２が基線ベクトルの算出を実施する場合について説明する。この実施順が逆になったとしても大きな差はない。
【００２３】
補正信号受信装置１１４は、基準局１０２から送信される補正信号を受信し、これを測位装置１１３の位置算出部２０１に出力する。また第１アンテナ１１１は、ＧＮＳＳ衛星１０１からの信号を受信して、位置算出部２０１へ出力する。位置算出部２０１では、以下の既知の技術を用いて第１アンテナ１１１の位置を算出する。
【００２４】
まず、第１アンテナ１１１で観測できる第ｉ衛星３０１の搬送波位相について、以下の方程式が成り立つ。
【数１】
2020008286.tif 000003
ここで、φ１_ｉは第１アンテナ１１１で観測できる第ｉ衛星３０１の搬送波位相、λは搬送波の波長、ｒ１_ｉは第ｉ衛星３０１から第１アンテナ１１１までの幾何学距離、ｃは光速、δｔ１はＧＮＳＳ受信機である測位装置１１３の時計誤差、δｔｉは第ｉ衛星３０１の時計誤差、Ｎ１_ｉは第ｉ衛星３０１から第１アンテナ１１１までにおける搬送波位相バイアス（第１搬送波位相バイアス）、εφ１_ｉは観測誤差である。
【００２５】
一方で、基準局１０２にて観測できる第ｉ衛星３０１の搬送波位相をφＢ_ｉとして、以下の方程式も同様に成り立つ。
【数２】
2020008286.tif 000004
ここで、λは搬送波の波長、ｒＢ_ｉは第ｉ衛星３０１から基準局１０２までの幾何学距離、ｃは光速、δｔＢは基準局１０２のＧＮＳＳ受信機時計誤差、δｔｉは第ｉ衛星３０１の時計誤差、ＮＢ_ｉは第ｉ衛星３０１から基準局１０２までにおける搬送波位相バイアス（基準局搬送波位相バイアス）、εφＢ_ｉは観測誤差である。
【００２６】
上の２つの式の差分をとると、以下のように表わすことができる。
【数３】
2020008286.tif 000005
【００２７】
上式の意味するところを、図３を用いて説明する。基準局１０２と第１アンテナ１１１との距離に対して、十分に遠いところに存在する第ｉ衛星３０１からの電波は、基準局１０２および第１アンテナ１１１では平行に届くと近似できる。このとき、第ｉ衛星３０１から第１アンテナ１１１までの距離と、第ｉ衛星３０１から基準局１０２までの距離の差３１１は、上式（３）の搬送波位相の差分で表わされる。
【００２８】
この搬送波位相の差分については、搬送波の波数のある整数倍と残りの部分の足し算で表される。観測される搬送波位相φＢ_ｉは、この残りの部分の値で有り、整数倍の部分を足し合わせることが必要である。この整数が搬送波位相バイアスであり、この搬送波位相バイアスは各アンテナで受信した搬送波の波数と言い換えてもよい。
【００２９】
上式（３）と同様に第ｊ衛星も第１アンテナ１１１および基準局１０２にて観測できていたとすれば、以下の方程式が成り立つ。
【数４】
2020008286.tif 000006
第ｉ衛星と第ｊ衛星がともに観測できているのであれば、式（３）と式（４）との差分をとることで、以下の方程式が成り立つ。
【数５】
2020008286.tif 000007
【００３０】
ここで、第１アンテナ１１１と基準局１０２が衛星までの距離に対して十分に近く、また基準局１０２に対する第１アンテナ１１１の相対位置をＬ＝（ｌｘ，ｌｙ，ｌｚ）と表わすと、ｒ１_ｉおよびｒＢ_ｉの関係は以下のように近似できる。
【数６】
2020008286.tif 000008
ただし、第ｉ衛星３０１と基準局１０２とを結ぶベクトルを（ｘＢ_ｉ，ｙＢ_ｉ，ｚＢ_ｉ）と表わした。第ｊ衛星も同様に以下のように表わされる。
【数７】
2020008286.tif 000009
よって、上式（５）は以下のようになる。
【数８】
2020008286.tif 000010
【００３１】
上式（８）の左辺に、第１アンテナ１１１および基準局１０２で観測できた搬送波位相の値を代入し、右辺には第ｉ衛星から基準局１０２までの距離および第ｊ衛星から基準局１０２までの距離を計算し、代入する。また、アンテナ位置には、適切な初期位置を設定するとともに、基準局１０２に対する第１アンテナ１１１の相対位置と、搬送波位相バイアスとを推定対象の変数として、観測可能な多数の衛星数分の方程式を用いて、最尤推定もしくはカルマンフィルタなどを構築する。これにより、推定対象の変数である、基準局１０２に対する第１アンテナ１１１の相対位置Ｌ（＝（ｌｘ，ｌｙ，ｌｚ））を算出することができる。この相対位置を算出する際に、他方の推定対象の変数である各搬送波位相バイアスも導出される。また最尤推定やカルマンフィルタの処理においては、誤差分散値が算出される。
【００３２】
相対位置Ｌが算出されれば、基準局１０２の位置が既知であるため、第１アンテナ１１１の位置を容易に求めることができる。
【００３３】
次に、前提技術として、位置とは別に、第１アンテナ１１１および第２アンテナ１１２を用いて車体１２１の方向を算出する基線ベクトル算出部２０２について説明する。第１アンテナ１１１は、受信したＧＮＳＳ衛星１０１からの信号を測位装置１１３の基線ベクトル算出部２０２へ出力し、第２アンテナ１１２も同様に、受信したＧＮＳＳ衛星１０１からの信号を基線ベクトル算出部２０２へ出力する。基線ベクトル算出部２０２は、第１アンテナ１１１に対する第２アンテナ１１２の相対位置を以下の既知の技術を用いて算出し、この相対位置から車体１２１の方向を計算する。
【００３４】
まず、第１アンテナ１１１で観測できた第ｉ衛星３０１の搬送波位相をφ１_ｉとして、以下の方程式が成り立つ（上記の式（１）と同様の式）。
【数９】
2020008286.tif 000011
ここで、λは搬送波の波長、ｒ１_ｉは第ｉ衛星３０１から第１アンテナ１１１までの幾何学距離、ｃは光速、δｔ１はＧＮＳＳ受信機である測位装置１１３の時計誤差、δｔｉは第ｉ衛星３０１の時計誤差、Ｎ１_ｉは第ｉ衛星から第１アンテナ１１１までにおける搬送波位相バイアス、εφ１_ｉは観測誤差である。
【００３５】
次に、第２アンテナ１１２にて観測できる第ｉ衛星３０１の搬送波位相をφ２_ｉとして、以下の方程式も同様に成り立つ。
【数１０】
2020008286.tif 000012
ここで、λは搬送波の波長、ｒ２_ｉは第ｉ衛星３０１から第２アンテナ１１２までの幾何学距離、ｃは光速、δｔｉは第ｉ衛星３０１の時計誤差、Ｎ２_ｉは第ｉ衛星３０１から第２アンテナ１１２までにおける搬送波位相バイアス（第２搬送波位相バイアス）、εφ２_ｉは観測誤差である。尚、第１アンテナ１１１および第２アンテナ１１２は同じ測位装置１１３に繋がっているため、第２アンテナ１１２のＧＮＳＳ受信機時計誤差は、第１アンテナ１１１と同じδｔ１である。
【００３６】
上の２つの式の差分をとると、以下のように表わすことができる。
【数１１】
2020008286.tif 000013
上式の意味するところを、図４を用いて説明する。第１アンテナ１１１から第２アンテナ１１２までの距離に対して、十分に遠いところに存在する第ｉ衛星３０１からの電波は、第１アンテナ１１１および第２アンテナ１１２では平行に届くと近似できる。このとき、第ｉ衛星３０１と第１アンテナ１１１、第ｉ衛星３０１と第２アンテナ１１２との距離の差４１１は、上式（１１）の搬送波位相の差分で表わされる。
【００３７】
この搬送波位相の差分については、搬送波の波数のある整数倍と残りの部分の足し算で表される。観測される搬送波位相φ１_ｉは、この残りの部分の値で有り、整数倍の部分を足し合わせることが必要である。この整数が搬送波位相バイアスである。搬送波位相バイアスは各アンテナで受信した搬送波の波数と言い換えてもよい。
【００３８】
第ｊ衛星も第１アンテナ１１１および第２アンテナ１１２にて観測できていたとすれば、上式（１１）と同様に以下の方程式が成り立つ。
【数１２】
2020008286.tif 000014
ここで、第１アンテナ１１１と第２アンテナ１１２が衛星までの距離に対して十分に近く、相対位置をＬ＝（ｌｘ，ｌｙ，ｌｚ）と表わせば、ｒ１_ｉおよびｒ２_ｉの関係は以下のように近似できる。
【数１３】
2020008286.tif 000015
ただし、第ｉ衛星と第１アンテナ１１１とを結ぶベクトルを（ｘ１_ｉ，ｙ１_ｉ，ｚ１_ｉ）と表わした。
【００３９】
よって、上式は以下のようになる。
【数１４】
2020008286.tif 000016
この式（１４）の左辺に、第１アンテナ１１１および第２アンテナ１１２で観測できた搬送波位相の値を代入し、右辺には第ｉ衛星３０１から第１アンテナ１１１までの距離を計算し、代入する。また、アンテナ位置には、適切な初期位置を設定するとともに、第１アンテナ１１１に対する第２アンテナ１１２の相対位置と搬送波位相バイアスとを推定対象の変数として、観測可能な衛星数分の方程式を用いて、最尤推定もしくはカルマンフィルタなどを構築する。これにより推定対象の変数である、第１アンテナ１１１に対する第２アンテナ１１２の相対位置Ｌ（＝（ｌｘ，ｌｙ，ｌｚ））を算出することができる。このときの相対位置Ｌは、第１アンテナ１１１を原点とした第２アンテナ１１２への方向を示しており、車体１２１に取り付けられているアンテナ位置から車体１２１の方向を容易に求めることができる。また、この相対位置を算出する際に、各搬送波位相バイアスも導出され、最尤推定やカルマンフィルタの処理では誤差分散値が算出される。
【００４０】
また、基線ベクトル算出部２０２により算出された車体方向は、制御コントローラ１１７へ出力され、作業機１２２のコントロールに用いられる。
【００４１】
以上のように、前提技術における位置の算出は、第１アンテナ１１１で計測されたＧＮＳＳ衛星１０１の情報を用いて実施している。
【００４２】
ここで、図５に第１アンテナ１１１からの作業機１２２方向の視線の一例を示す。図５に示すように、ショベル１の作業機１２２の操作によっては、ショベル１の作業機１２２によって遮蔽されるＧＮＳＳ衛星５０１が存在する可能性がある。このような場合、遮蔽されたＧＮＳＳ衛星５０１からの搬送波位相に誤差が生じ、結果、測位精度が低下する可能性がある。
【００４３】
そこで本実施形態では、測位装置１１３に各アンテナで計測される衛星を選択し補完する機能を追加し、測位精度の劣化を防ぐ。
【００４４】
（測位装置の全体動作）
本実施形態における測位装置１１３の処理の流れを図６に示す。尚、測位装置１１３は、測位タイミング毎に図６の処理を繰り返し実行する。
【００４５】
まず測位装置１１３は、第１アンテナ１１１、第２アンテナ１１２、および車体姿勢計測装置１１５や作業機姿勢計測装置１１８などの各計測装置からの出力を、一定タイミングで取得する（ステップＳ６０１）。
【００４６】
次に測位装置１１３の位置算出部２０１は、上記の前提技術と同手法により、第１アンテナ１１１の位置および位置の誤差分散値を算出する（ステップＳ６０２）。また、この際に算出した、測位計算に使用した衛星の搬送波位相バイアスを一時記憶部２０３へ記録する。
【００４７】
一時記憶部２０３では、図７に示すような基準局１０２と第１アンテナ１１１間の搬送波位相バイアス（基準局１０２の搬送波位相バイアスと第１アンテナ１１１の搬送波位相バイアスとの差分バイアス）のテーブルを持つ。この基準局１０２と第１アンテナ１１１間の搬送波位相バイアステーブルには、存在しえる全ての衛星を列挙した列７０１と、それぞれの衛星に対する最新の搬送波位相バイアスの値がセットされた列７０２と、それぞれの衛星に対する最後に補完位置算出部２１５（補完位置算出部２１５の処理については後述）にて使用した時の搬送波位相バイアスの値がセットされた列７０３が存在する。また図７に示すテーブルには、それぞれの衛星に対する最後に補完位置算出部２１５にて使用した時と最新の搬送波位相バイアスが算出された時刻までの経過時間がセットされた列７０４も存在する。ただし、列７０２について、測位計算に使用しなかった衛星の項目は空となるか、もしくはデータが存在しないことを示す値がセットされている。
【００４８】
次に測位装置１１３の基線ベクトル算出部２０２は、上記前提技術と同手法で第１アンテナ１１１および第２アンテナ１１２の基線ベクトルを算出する（ステップＳ６０３）。また基線ベクトル算出部２０２は、この際に算出する、第１アンテナ１１１および第２アンテナ１１２の間での搬送波位相バイアスを一時記憶部２０３へ記録する。
【００４９】
一時記憶部２０３では、図８に示すような第１アンテナ１１１と第２アンテナ１１２との間の搬送波位相バイアス（第１アンテナ１１１の搬送波位相バイアスと第２アンテナ１１２の搬送波位相バイアスとの差分バイアス）のテーブルを持つ。この第１アンテナ１１１と第２アンテナ１１２との間の搬送波位相バイアステーブルには、存在しうる全ての衛星を列挙した列８０１と、それぞれの衛星に対する最新の搬送波位相バイアスの値が入力された列８０２と、それぞれの衛星に対する最後に補完位置算出部２１５にて使用した時の搬送波位相バイアスの値が入力された列８０３が存在する。また図８のテーブルには、それぞれの衛星に対する最後に補完位置算出部２１５にて使用した時と最新の搬送波位相バイアスが算出された時刻までの経過時間がセットされた列８０４も存在する。ただし、データが存在しない項目は空となるか、もしくはデータが存在しないことを示す値が入力されている。
【００５０】
次に測位装置１１３の電波遮蔽判定部２１１は、車体１２１や作業機１２２がＧＮＳＳ衛星１０１からの電波を第１アンテナ１１１に届くまでの間で遮っているか否かを判定する（ステップＳ６０４）。この電波遮蔽判定部２１１の処理の詳細は後述する。電波遮蔽判定部２１１は、車体姿勢計測装置１１５から得られる上部旋回体１２３の方向および重力方向に対する傾き、および作業機姿勢計測装置１１８から得られる作業機１２２の仰角などの姿勢データを受信し、これらにより車体１２１や作業機１２２による遮蔽範囲を算出する。そして電波遮蔽判定部２１１は、第１アンテナ１１１や第２アンテナ１１２から見て、その遮蔽範囲に存在するＧＮＳＳ衛星１０１に対して、電波遮蔽フラグを設定する。電波遮蔽判定部２１１は、存在しうる全ての衛星について遮蔽フラグをセットした遮蔽フラグテーブルを作成し、一時記憶部２０３へ記録する。
【００５１】
遮蔽フラグテーブルは図９のような構造を持っており、存在しうる全ての衛星に対して、ＧＮＳＳアンテナごとに遮蔽されているか否かの判定結果が登録されている。図９の例では、それぞれのＧＮＳＳアンテナから見た衛星の位置において、遮蔽される場合は「遮蔽（１）」、遮蔽されていない場合は「遮蔽なし（０）」として登録される。
【００５２】
次に測位装置１１３では、第一の共通衛星選択部２１２が第一の共通衛星を選択する（ステップＳ６０５）。第一の共通衛星とは、位置算出部２０１が用いる第１アンテナ１１１において電波を受信した衛星と、基準局１０２が送信する補正信号に含まれる衛星との、共通の衛星のうち、電波遮蔽判定部２１１で第１アンテナ１１１にて電波が遮蔽されていないと判定された衛星のことである。この判定は、一時記憶部２０３へ記録された遮蔽フラグテーブルにより行われる。つまり、第一の共通衛星選択部２１２は、各衛星番号の遮蔽フラグが基準局１０２および第１アンテナ１１１において両方とも「遮蔽なし（図９では「０」）」が設定されている衛星を選択する。
【００５３】
次に測位装置１１３では、第二の共通衛星選択部２１３が第二の共通衛星を選択する（ステップＳ６０６）。第二の共通衛星とは、基線ベクトル算出部２０２における第１アンテナ１１１と第２アンテナ１１２とで電波を受信した衛星と、第１アンテナ１１１にて電波を受信した衛星と第２アンテナ１１２にて電波を受信した衛星との共通の衛星のうち、電波遮蔽判定部２１１で第１アンテナ１１１にて電波が遮蔽されており、かつ第２アンテナ１１２で電波が遮蔽されていないと判定された衛星のことである。つまり、一時記憶部２０３に保存されている遮蔽フラグテーブルにて、各衛星の遮蔽フラグが第１アンテナ１１１において「遮蔽（図９では「１」）」かつ第２アンテナ１１２において「遮蔽なし（図９では「０」）」が設定されている衛星を選択する。
【００５４】
次に測位装置１１３では、補完搬送波位相バイアス決定部２１４が、ステップＳ６０２にて位置算出部２０１の測位計算（第１アンテナ１１１の位置算出）に用いられた衛星の全てが、ステップＳ６０４で遮蔽されていないと判定されているかを判定する（ステップＳ６０７）。測位計算に用いられた全ての衛星が遮蔽されていない場合（ステップＳ６０７：Ｙｅｓ）、後段の補完位置算出部２１５にて精度の高い状態で補完搬送波位相バイアスを計算することが可能として、ステップＳ６０８へ進む。遮蔽された衛星が存在する場合（ステップＳ６０７：Ｎｏ）、既に計算された補完搬送波位相バイアス（図６のフローチャートを１サイクル前に実行した際に算出された補完搬送波位相バイアス）を用いて、補間位置を計算するため、ステップＳ６０９へ進む。
【００５５】
測位計算に用いる全ての衛星が遮蔽されていない場合、つまり位置算出部２０１の出力が高精度であると扱うことができる場合（Ｓ６０７：Ｙｅｓ）、測位装置１１３の補完搬送波位相バイアス決定部２１４は、補完搬送波位相バイアスを計算する（ステップＳ６０８）。この計算方法については後述する。補完搬送波位相バイアス決定部２１４は、本実施形態では、観測可能な各衛星に関して基準局１０２と第２アンテナ１１２間の搬送波位相バイアスを計算するための係数を算出する。基準局１０２と第２アンテナ１１２間の搬送波位相バイアスは、上記の従来技術や前提技術では求められていない。補完搬送波位相バイアス決定部２１４は、これらの係数を補完搬送波位相バイアステーブルに設定し、一時記憶部２０３に保存する。この補完搬送波位相バイアステーブルへの登録についても、計算方法とともに後に詳細を述べる。
【００５６】
またステップＳ６０８において、補完搬送波位相バイアス決定部２１４は、基準局１０２と第１アンテナ１１１間の搬送波位相バイアステーブル（図７参照）に対し、以下の操作を行う。すなわち補完搬送波位相バイアス決定部２１４は、最新の搬送波位相バイアスを保持する列７０２に値がセットされている項目を、補完用搬送波位相バイアスを保持する列７０３へコピーする。また補完搬送波位相バイアス決定部２１４は、コピーした項目に対応する列７０４（経過時間を保持する列）の値をゼロに設定する。ただし、列７０２に空欄やデータ無しを示す値がセットされている項目については、列７０３にコピーせずに、列７０４の経過時間を１サンプル時間増やす。
【００５７】
補完搬送波位相バイアス決定部２１４は、第１アンテナ１１１と第２アンテナ１１２間の搬送波位相バイアステーブル（図８参照）に対しても同様に、列８０２に値がセットされている項目を、列８０３へコピーし、コピーした項目に対応する列８０４の値をゼロに設定する。この場合においても補完搬送波位相バイアス決定部２１４は、最新の値が入力されている列８０２に空欄やデータ無しを示す値がセットされている項目については、列８０３にコピーせずに、列８０４の経過時間を１サンプル時間増やす。
【００５８】
尚、このステップＳ６０８で求められる補完搬送波位相バイアスを求める係数は、後述のステップＳ６１０で、補完位置算出部２１５により用いられる。
【００５９】
ステップＳ６０７にて、位置算出部２０１が測位計算に用いた衛星に遮蔽がされた衛星があると判定された場合（ステップＳ６０７：Ｎｏ）、測位装置１１３の補完搬送波位相バイアス決定部２１４は、補完搬送波位相バイアスを使用する衛星番号を補完位置算出部２１５へ出力する（ステップＳ６０９）。出力する補完搬送波位相バイアスを使用する衛星番号は、ステップＳ６０６で選択された第二の共通衛星の衛星番号である。
【００６０】
次に測位装置１１３の補完位置算出部２１５は、補完搬送波位相バイアスを用いて、第１アンテナ１１１の位置、およびその誤差分散値を算出する（ステップＳ６１０）。この算出の詳細は後述する。補完位置算出部２１５は、位置算出部２０１で算出した基準局１０２と第１アンテナ１１１間の搬送波位相バイアスと、基線ベクトル算出部２０２で算出した第１アンテナ１１１と第２アンテナ１１２間の搬送波位相バイアスを用いて、第１アンテナ１１１で遮蔽されたと判定された衛星の信号を第２アンテナ１１２で計測した信号を用いて補完することで、第１アンテナ１１１における測位計算を補強することができる。
【００６１】
次に測位装置１１３の位置出力部２１６は、算出精度が比較するため、位置算出部２０１にて算出された第１アンテナ１１１の位置の誤差分散値と、補完位置算出部２１５で算出された第１アンテナ１１１の位置の誤差分散値とを比較する（ステップＳ６１１）。位置出力部２１６は、誤差分散値が小さい方を出力位置として選択する。つまり、補完位置算出部２１５の出力する誤差分散値が位置算出部２０１の出力する位置の誤差分散値より小さい場合（ステップＳ６１１：Ｙｅｓ）、処理はステップＳ６１２に移行し、位置出力部２１６は、現在位置に補完位置算出部２１５の算出した位置を設定する（ステップＳ６１２）。補完位置算出部２１５の出力する誤差分散値が位置算出部２０１の出力する位置の誤差分散値以上となる場合（ステップＳ６１１：Ｎｏ）、処理はステップＳ６１３に移行し、位置出力部２１６は、位置算出部２０１が算出した位置を現在位置として設定する（ステップＳ６１３）。
【００６２】
最後に位置出力部２１６は、前ステップで設定した第１アンテナ１１１の現在位置、第２アンテナ１１２の現在位置、基線ベクトルを示す値を含めて、制御コントローラ１１７へ出力し（ステップＳ６１４）、測位装置１１３の一連の処理を終了する。尚、制御コントローラ１１７は、測位装置１１３から得られた各アンテナの位置に基づき、車体１２１および作業機１２２の動作を制御する。この制御の一例としては、ショベル１の目的地までの自律走行制御や、作業機１２２を用いた自律作業の制御であったりする。また、制御コントローラ１１７が表示装置を制御してショベル１の現在位置をマップ上に表示させ、オペレータに通知することも可能である。
【００６３】
このような測位装置１１３の処理により、第１アンテナ１１１で作業機１２２の動作によって死角となり、遮蔽された衛星からの電波のうち、第２アンテナ１１２で遮蔽されずに受信した電波を用いて測位演算を行うことが可能となり、作業機１２２の姿勢や動作に起因する精度劣化を可能な限り防ぐことができる。
【００６４】
以降、測位装置１１３の各部の機能の詳細について述べる。
【００６５】
（電波遮蔽判定部）
ステップＳ６０４での電波遮蔽判定部２１１の動作について説明する。電波遮蔽判定部２１１は、車体姿勢計測装置１１５の計測結果である車体１２１の車体姿勢と、作業機操作装置１１６からの指令信号に従い作業機１２２が動作した際の、作業機姿勢計測装置１１８で計測された作業機の姿勢、および第１アンテナ１１１と第２アンテナ１１２とで観測される衛星情報から、衛星ごとに電波の遮蔽の有無を判定し、遮蔽フラグテーブルにその結果を書き込む。
【００６６】
図１０に電波遮蔽判定部２１１の処理の流れを示す。電波遮蔽判定部２１１は、まず車体１２１の車体姿勢を示す値（上部旋回体１２３の向きや傾きの値）を車体姿勢計測装置１１５から入力し、作業機１２２の作業機姿勢を示す値を作業機姿勢計測装置１１８から入力する。そして電波遮蔽判定部２１１は、これらを各値を用いて遮蔽範囲を計算する（ステップＳ１００１）。遮蔽範囲は、水平方向に対し直行する重力方向（高さ方向）での作業機１２２の最も高い位置ｘｈ、作業機１２２の幅ｗｗ、作業機１２２の向きφｗで表わされるものとする。作業機１２２の幅ｗｗは、パラメータとして事前に設定されており、作業機１２２の向きφｗは車体姿勢計測装置１１５から取得できる。また、作業機１２２において最も高くなる位置ｘｈは以下の様に算出される。
【００６７】
作業機１２２は、図１１のように三つのパーツに大きく分けることができる。これらは、車体１２１に接続されているパーツから順に、ブーム１１１１、アーム１１２１、バケット１１３１と呼ばれる。ブーム１１１１の長さをＬ１とし、水平に対してθ１だけ傾いているとすると、ブーム１１１１とアーム１１２１の接続点１１１２は、車体１２１との接続点１１１３に対して、車体前方方向、高さ方向それぞれに（Ｌ１ｃｏｓθ１，Ｌ１ｓｉｎθ１）だけ遷移した位置に存在する。
【００６８】
アーム１１２１は、接続点１１１２を中心に回転する。このとき、電波遮蔽判定部２１１は、アーム１１２１の第一の端点１１２２、第二の端点１１２３、およびバケット１１３１との接続点１１２４の各点の高さを求める。アーム１１２１の第一の端点１１２２もしくは第二の端点１１２３の方がバケット１１３１との接続点１１２４よりも高い場合は、第一の端点１１２２、第二の端点１１２３のいずれかの端点が作業機１２２で最も高い点となり、バケット１１３１との接続点１１２４の方が高い場合は、バケット１１３１との接続点１１２４もしくはバケットの底部１１３２、もしくはバケット１１３１のつめ先１１３３のいずれかが、作業機１２２で最も高い位置となる。
【００６９】
以下に、各位置についての接続点１１１３からの位置を示す。
アームの第一の端点１１２２・・・（L1cosθ1 + L2b1cosθ2b1 , L1sinθ1 + L2b1sinθ2b1）
アームの第二の端点１１２３・・・（L1cosθ1 + L2b2cosθ2b2 , L1sinθ1 + L2b2sinθ2b2）
バケットとの接続点１１２４・・・（L1cosθ1 + L2fcosθ2f , L1sinθ1 + L2fsinθ2f）
バケットの底部１１３２・・・（L1cosθ1 + L2fcosθ2f + L3bcosθ3b , L1sinθ1 + L2fsinθ2f + L3bsinθ3b）
バケットのつめ先１１３３・・・（L1cosθ1 + L2fcosθ2f + L3tcosθ3t , L1sinθ1 + L2fsinθ2f + L3tsinθ3t）
それぞれのパラメータは以下とする。尚、長さは形状などに依拠した規定値であり、角度は作業機姿勢計測装置１１８から作業機操作装置１１６での操作信号に従い取得することができる。
Ｌ１：接続点１１１３から接続点１１１２までの長さ
Ｌ２ｂ１：接続点１１１２から第一の端点１１２２までの長さ
Ｌ２ｂ２：接続点１１１２から第二の端点１１２３までの長さ
Ｌ２ｆ：接続点１１１２から接続点１１２４までの長さ
Ｌ３ｂ：接続点１１２４からバケットの底部１１３２までの長さ
Ｌ３ｔ：接続点１１２４からバケットのつめ先１１３３までの長さ
θ１：車体との接続点１１１３からアームとの接続点１１１２までのベクトルの水平に対する傾き
θ２ｂ１：接続点１１１２から第一の端点１１２２までのベクトルの水平に対する傾き
θ２ｂ２：接続点１１１２から第二の端点１１２３までのベクトルの水平に対する傾き
θ２ｆ：接続点１１１２から接続点１１２４までのベクトルの水平に対する傾き
θ３ｂ：接続点１１２４からバケットの底部１１３２までのベクトルの水平に対する傾き
θ３ｔ：接続点１１２４からバケットのつめ先１１３３までのベクトルの水平に対する傾き
ただし、水平に対する傾きにはプラスマイナスがあり、水平に対して重力方向への傾きは負、重力と反対方向への傾きは正とする。この定義は座標系の定義によって変更してもよい。また、作業機１２２の形状によって上記の高さを求める位置が増減してもよい。
【００７０】
上記４点から最も高い点をｘｈとして、次のステップＳ１００２に移行する。
【００７１】
次に電波遮蔽判定部２１１は、第１アンテナ１１１および第２アンテナ１１２で計測された衛星の衛星配置を取得する（ステップＳ１００２）。電波遮蔽判定部２１１は、ステップＳ６０２において位置算出部２０１が既に計算している第１アンテナ１１１で計測される各衛星の位置、およびステップＳ６０３において基線ベクトル算出部２０２が既に計算している第２アンテナ１１２で計測される各衛星の位置を、衛星配置として取得する。
【００７２】
電波遮蔽判定部２１１は、第１アンテナ１１１および第２アンテナ１１２それぞれにおいて取得した各衛星を選択し（ステップＳ１００３）、第１アンテナ１１１および第２アンテナ１１２で計測される全ての衛星について、以降の処理を繰り返す。
【００７３】
電波遮蔽判定部２１１は、対象となる衛星の位置と作業機１２２の遮蔽範囲とを比較する（ステップＳ１００４）。この比較について図１２、図１３を用いて説明する。図１２はショベル１を横から見た図、図１３はショベル１を上方向から見た図である。また各符号の下２桁以外は図番号を示している。
【００７４】
まず、対象となる第ｉ衛星１２０１の位置とアンテナＡ１２０２の位置から衛星への視線方向を結ぶベクトル（ｘＡｉ，ｙＡｉ，ｚＡｉ）を計算する。例えば、アンテナＡ１２０２が第１アンテナ１１１の場合、位置算出部２０１もしくは基線ベクトル算出部２０２で計算した第１アンテナ１１１からの視線方向１２０３（＝（ｘ１ｉ，ｙ１ｉ，ｚ１ｉ））が取得される。一方、アンテナＡ１２０２が第２アンテナ１１２の場合、視線方向１２０３は、車体姿勢計測装置１１５で計測された車体１２１の方向と、事前に設定されている第１アンテナ１１１と第２アンテナ１１２の車体上の取り付け位置から、第２アンテナ１１２の位置を算出することで、対象とする衛星までの視線方向１２０３（＝（ｘ２ｉ，ｙ２ｉ，ｚ２ｉ））が取得される。
【００７５】
次に、計算したアンテナＡ１２０２からの視線方向１２０３（＝（ｘＡｉ，ｙＡｉ，ｚＡｉ））により、第ｉ衛星１２０１の仰角１２０４（ψＡｉ）、方向１３０１（φＡｉ）を計算する。
【００７６】
次に電波遮蔽判定部２１１は、アンテナＡ１２０２から作業機１２２の最も高い点１２０５（ｘｈ）の仰角１２０７（ψＡｘ）を計算し、衛星の仰角１２０４（ψＡｉ）と仰角１２０７（ψＡｘ）とを比較する。衛星の仰角１２０４の方が大きい（高い）場合（ステップＳ１００５：Ｎｏ）、電波遮蔽判定部２１１は遮蔽なしと判定し、ステップＳ１００７へ処理を進める。一方、衛星の仰角１２０４の方が小さい（低い）場合、下記の処理を行う。
【００７７】
次に作業機１２２の方向と衛星の仰角１２０４（ψＡｉ）から、以下のように対象となる第ｉ衛星１２０１が作業機１２２によって遮蔽される角度１３０２（βＡ_ｉ）を求める。
【００７８】
アンテナＡ１２０２と作業機１２２による第ｉ衛星１２０１の遮蔽点１２０６との距離ＬＡ_ｉにより、遮蔽される角度１３０２（βＡ_ｉ）は以下のように算出できる。
【数１５】
2020008286.tif 000017
ただし、それぞれの変数は以下で計算される。
【数１６】
2020008286.tif 000018
作業機１２２の幅１３０３（ｗｗ（ψ，σ））は角度ψおよび作業機１２２の姿勢σの関数もしくはテーブルにより規定された値であり、プラスマイナスの２つの値を持つこともある。またｘｈｘ、ｘｈｙ、ｘｈｚは、作業機１２２の最も高い点１２０５の位置を表し、ｘＡｘ、ｘＡｚは、アンテナＡ１２０２の位置を表し、ｘｂｘ、ｘｂｙは作業機１２２による衛星の遮蔽点１２０６の位置を表している。
【００７９】
次に電波遮蔽判定部２１１は、作業機１２２の向きφｗと遮蔽される角度βＡ_ｉから求まる範囲内に、第ｉ衛星の方向φＡｉが含まれるかを判定する（ステップＳ１００５）。
【００８０】
遮蔽される角度βＡ_ｉが一つの場合かつ遮蔽される角度βＡ_ｉが正の場合において、
【数１７】
2020008286.tif 000019
を満たす場合、電波遮蔽判定部２１１は遮蔽されていると判定し（ステップＳ１００５：Ｙｅｓ）、当該衛星の遮蔽フラグを「１」に設定する（ステップＳ１００６）。尚、φwはアンテナＡ１２０２と作業機１２２の最も高い点１２０５とを結んだベクトルの方向を示しており、幾何学的に算出することができる。満たさない場合、電波遮蔽判定部２１１は遮蔽がないと判定し（ステップＳ１００５：Ｎｏ）、当該衛星の遮蔽フラグを「０」とする。尚、遮蔽フラグは初期値として「０」が入力されているものとする（以降の説明においても同様）。
【００８１】
遮蔽される角度βＡｉが一つの場合かつ遮蔽される角度βＡｉが負の場合において、
【数１８】
2020008286.tif 000020
を満たす場合、電波遮蔽判定部２１１は遮蔽されていると判定し（ステップＳ１００５：Ｙｅｓ）、当該衛星の遮蔽フラグを「１」に設定し（ステップＳ１００６）、満たさない場合、電波遮蔽判定部２１１は遮蔽がないと判定し（ステップＳ１００５：Ｎｏ）、遮蔽フラグを「０」とする。
【００８２】
遮蔽される角度βＡｉがプラスマイナスの２つの値がある場合、正の値をβＡｉ、負の値をβ’Ａｉと表わすとして、
【数１９】
2020008286.tif 000021
を満たす場合、電波遮蔽判定部２１１は遮蔽されていると判定し（ステップＳ１００５：Ｙｅｓ）、当該衛星の遮蔽フラグを「１」に設定し（ステップＳ１００６）、満たさない場合は遮蔽がないと判定し（ステップＳ１００５：Ｎｏ）、当該衛星の遮蔽フラグを「０」とする。
【００８３】
上記のとおり、これらの電波遮蔽フラグは、該当する衛星およびアンテナの組み合わせのテーブルに設定され、一時記憶部２０３に保存される。
【００８４】
該当するアンテナの全衛星について、この処理を実施する（ステップＳ１００７：Ｎｏのループ）。すなわち他衛星が存在すれば、ステップＳ１００３へ戻り、ステップＳ１００４からステップＳ１００６を繰り返す。
【００８５】
また、該当するアンテナで観測できる全衛星で遮蔽フラグが設定完了した場合、電波遮蔽判定部２１１は、他に遮蔽フラグが設定されていないアンテナがあるかを判定する（ステップＳ１００８）。他のアンテナがある場合は、ステップＳ１００３へ戻り、ステップＳ１００４からステップＳ１００７を繰り返す（ステップＳ１００８：Ｎｏのループ）。他のアンテナがない場合（ステップＳ１００８：Ｙｅｓ）、全ての遮蔽フラグが設定されたことになるため、電波遮蔽判定部２１１は、当該処理を終了する。
【００８６】
（補完搬送波位相バイアス決定部）
ステップＳ６０８において、補完搬送波位相バイアス決定部２１４は、基準局１０２と第２アンテナ１１２との間の搬送波位相バイアスを決定し、一時記憶部２０３の補完搬送波位相バイアステーブルに保存する。搬送波位相バイアスは、衛星から基準局１０２までの航路と、衛星から第１アンテナ１１１までの航路との差（航路差）における波の数を表わしていた。本実施形態では、第１アンテナ１１１で観測される全ての衛星において電波の遮蔽が無いときに、基準局１０２と第２アンテナ１１２との間の補完搬送波位相バイアスを決定する（図６のステップＳ６０７：Ｙｅｓの後にステップＳ６０８が実行される）。そして本実施形態では、第１アンテナ１１１で観測される衛星の中で電波の遮蔽が発生している場合に、ステップＳ６１０で、第１アンテナ１１１で衛星からの電波が遮蔽されており、かつ第２アンテナ１１２で衛星からの電波が遮蔽されていない衛星について、基準局１０２と第２アンテナ１１２との衛星からの航路差（すなわち補完搬送波位相バイアス）を用いて測位計算をする。これにより、測位計算の高精度化を図ることができる。
【００８７】
以下に、基準局１０２と第２アンテナ１１２との間の補完搬送波位相バイアスを決定する原理を示す。
【００８８】
これまでの議論から、第ｉ衛星に関する以下の式が成り立つ。
【数２０】
2020008286.tif 000022
第ｉ衛星について、第１アンテナ１１１では遮蔽されているとの判定結果を得た場合、上記第１アンテナ１１１の搬送波位相φ１_ｉは使用しないようにする。そこで、第２アンテナ１１２の搬送波位相φ２_ｉを用いるために、上式（２０）の２つの式を足し合わせると、
【数２１】
2020008286.tif 000023
となる。
【００８９】
また、第１アンテナ１１１と第２アンテナ１１２が衛星までの距離に対して十分に近く、車体座標系における第１アンテナ１１１と第２アンテナ１１２との相対位置をＬと表わせば、ｒ１ｉおよびｒ２ｉの関係は以下のように近似できる。
【数２２】
2020008286.tif 000024
ただし、Ｒφは、車体座標系から衛星位置を表す座標系への変換行列であり、車体姿勢計測装置１１５の結果から算出することができる。よって上式（２１）は、
【数２３】
2020008286.tif 000025
と表わすことができる。
【００９０】
上記の前提技術においては、第２アンテナ１１２と基準局１０２との航路差における搬送波位相バイアス（Ｎ２_ｉ−ＮＢ_ｉ）を求めていないため、搬送波位相バイアスの決定を再度実施する必要があった。しかし、搬送波位相バイアスは一度決定すると、サイクルスリップなどが発生しない限り計算しなおす必要はない。本実施形態ではこのことを踏まえ、以下のように補完搬送波位相バイアスを決定する。
【００９１】
以下、図１４を用いて説明する。基準局１０２と第２アンテナ１１２との距離に対して、十分に遠いところに存在する第ｉ衛星１４０１からの電波は、基準局１０２および第２アンテナ１１２では平行に届くと近似できる。よって、第ｉ衛星１４０１と第２アンテナ１１２、第ｉ衛星１４０１と基準局１０２との距離の差は、上式（２３）の搬送波位相の差分で表わされる。基準局１０２と第１アンテナ１１１および第２アンテナ１１２を含む平面１４０２から第ｉ衛星１４０１までの視線の成す角度１４０４をψ〜ｉ、基準局１０２の位置をＰＢ、第１アンテナ１１１の位置をＰ１、第２アンテナ１１２の位置をＰ２とすると、基準局１０２と第２アンテナ１１２の航路差、基準局１０２と第１アンテナ１１１との航路差、第１アンテナ１１１と第２アンテナ１１２の航路差の関係は以下の様に表わすことができる。
【数２４】
2020008286.tif 000026
上式（２４）より、基準局１０２と第２アンテナ１１２の航路差に関連する搬送波位相バイアスは、第１アンテナ１１１と基準局１０２との航路差に生じる搬送波位相バイアス（Ｎ１_ｉ−ＮＢ_ｉ）と、第２アンテナ１１２と第１アンテナ１１１との航路差に生じる搬送波位相バイアス（Ｎ２_ｉ−Ｎ１_ｉ）のそれぞれに、係数ＣＢ１_ｉおよびＣ１２_ｉをかけることで表わすことができ、これらの係数は以下のように表わすことができる。
【数２５】
2020008286.tif 000027
ここで、ξは基準局１０２から第１アンテナ１１１へのベクトルと、第１アンテナ１１１から第２アンテナ１１２へのベクトルが成す角度１４０３である。
【００９２】
ただし、基準局１０２から第１アンテナ１１１へのベクトルは、ステップＳ６０２で求めた位置と基準局１０２から算出する。この実装例以外にも、以下に示すような方法で、第１アンテナ１１１の位置を算出し、基準局１０２とのベクトルを算出しても同様の効果を得ることができる。
・慣性航法装置を取り付け、第１アンテナ１１１の位置を１サンプル前から補完する。
・制御コントローラ１１７からの入力から移動量を予測し、１サンプル前の位置から補完する。
・外部の計測手段から第１アンテナ１１１を計測し代入する。
また、第１アンテナ１１１から第２アンテナ１１２へのベクトルはステップＳ６０３で算出されたベクトルをそのまま使用する。
【００９３】
以上により算出された基準局１０２と第２アンテナ１１２の航路差に関連する搬送波位相バイアスの係数は、一時記憶部２０３の第ｉ衛星１４０１の補完搬送波位相バイアステーブル（後述の図１５）へ記憶される。
【００９４】
また、ＧＮＳＳアンテナが３つ以上有る場合でも、基準局１０２と任意の２つのアンテナを選び、それらが含まれる平面上のベクトルに対して上式（２５）と同様の計算を実施することで求めることができる。
【００９５】
補完搬送波位相バイアステーブルは、図１５に示すような構造を持っている。補完搬送波位相バイアステーブルは衛星ごとに存在する。例えば、第ｉ衛星における各アンテナを結ぶベクトルの始点が列挙されている列１５０１に対して、ベクトルの終点となるアンテナが列挙されている行１５０２があり、それぞれの組に対する係数がテーブルに記載されている。ただし、基準局１０２がアンテナの組の終点となることは無いので、ベクトルの行方向（行１５０２）には存在しない。また始点と終点が同じアンテナとなることも、本実施形態では想定しない。
【００９６】
この補完搬送波位相バイアステーブルに記憶された値は、補完位置算出部２１５にて補完位置を算出するための搬送波位相バイアスを算出するために用いる。このように、搬送波位相バイアスが一度決定すれば、サイクルスリップなどが発生しなければ計算しなおす必要がないことを活かし、衛星が観測できている際に基準局１０２と第２アンテナ１１２との間の搬送波位相バイアスを簡略に求めることで計算量を抑え、かつ精度の高い測位演算が可能となる。
【００９７】
（補完位置算出部）
ステップＳ６１０では、補完位置算出部２１５にて補完搬送波位相バイアス決定部２１４で算出された補完搬送波位相バイアスを用いて、再度測位計算を実施する。以下に詳細な計算方法を述べる。
【００９８】
位置算出部２０１において、第１アンテナ１１１において遮蔽がないと判定された第ｊ衛星について以下の方程式が成り立つ。
【数２６】
2020008286.tif 000028
また、第ｊ衛星と同様に第ｋ衛星も第１アンテナ１１１にて遮蔽がないと判定されているとすれば、以下の方程式が成り立つ。
【数２７】
2020008286.tif 000029
第ｊ衛星と第ｋ衛星がともに遮蔽がないので、上の２つの式の差分をとることで、以下の方程式が成り立つ。
【数２８】
2020008286.tif 000030
【００９９】
ここで、補完搬送波位相バイアス決定部２１４で説明した様に、第１アンテナ１１１で電波が遮蔽されており、かつ第２アンテナ１１２で電波が遮蔽されていない衛星として、第ｉ衛星が存在していた場合、第ｉ衛星については以下の方程式が成り立つ。
【数２９】
2020008286.tif 000031
よって、第ｉ衛星と第ｊ衛星とでは、それぞれの差分をとることで以下の方程式が成り立つことになる。
【数３０】
2020008286.tif 000032
【０１００】
位置算出部２０１と同様に、第１アンテナ１１１と基準局１０２が衛星までの距離に対して十分に近く、相対位置を（ｌｘ，ｌｙ，ｌｚ）と表わせば、ｒ１_ｉおよびｒＢ_ｉの関係は以下のように近似できる。
【数３１】
2020008286.tif 000033
ただし、第ｉ衛星と基準局１０２とを結ぶベクトルを（ｘＢ_ｉ，ｙＢ_ｉ，ｚＢ_ｉ）と表わした。第ｊ衛星、第ｋ衛星も同様に以下のように表わされる。
【数３２】
2020008286.tif 000034
よって、第１アンテナ１１１において差分をとる二つの衛星が共に遮蔽されていない場合、つまりステップＳ６０５において第一の共通衛星として選択された衛星の組み合わせに対しては以下の方程式を用いる。
【数３３】
2020008286.tif 000035
【０１０１】
また、第１アンテナ１１１において差分をとる二つの衛星のうち、片方が遮蔽されている場合、つまりステップＳ６０６において第二の共通衛星として選択された衛星の組み合わせに対しては以下の方程式を用いる。
【数３４】
2020008286.tif 000036
ただし、遮蔽されていると判定されている第ｉ衛星を差分の原点側におく場合、以下のようになる。
【数３５】
2020008286.tif 000037
【０１０２】
補完位置算出部２１５は、式（３４）（式（３５）を用いる場合は式（３５））の方程式の左辺に、第１アンテナ１１１、第２アンテナ１１２、基準局１０２で観測できた搬送波位相の値を代入する。右辺に関しては、遮蔽されていないと判定された第ｊ衛星、第ｋ衛星の組み合わせについては、搬送波位相バイアステーブルの列７０３から第１アンテナ１１１と基準局１０２との搬送波位相バイアスを代入する。
【０１０３】
また右辺において、遮蔽されていると判定された第ｉ衛星との組み合わせについては、第２アンテナ１１２と基準局１０２との間の補完搬送波位相バイアス（Ｎ２−ＮＢ）を、上記の通り、補完搬送波位相バイアステーブルの係数ＣＢ１、Ｃ１２を用いて計算する。すなわち、式（２４）に示したように、係数ＣＢ１、Ｃ１２を列７０３および列８０３の値にそれぞれかけて足し合わせることで計算する。
【０１０４】
また補完位置算出部２１５は、このとき、それぞれの搬送波位相バイアステーブルの列７０４および列８０４の経過時間がある閾値よりも大きい場合、は、補完搬送波位相バイアスは用いず、その衛星を用いる方程式は使わない。すなわち補完位置算出部２１５は、一定時間以上、電波遮蔽判定部２１１で遮蔽されていると判定された衛星の搬送波位相を除外して、補完搬送波位相バイアスを計算し、当該補完搬送波位相バイアスを用いた観測方程式を用いて測位演算する。
【０１０５】
アンテナ位置には適切な初期位置を設定することで、第１アンテナ１１１の位置と基準局１０２との相対位置および搬送波位相バイアスを推定する変数として、第一の共通衛星で選択された衛星および第二の共通衛星で選択された衛星の全ての独立な衛星の組み合わせ分の方程式により最尤推定もしくはカルマンフィルタなどを構築することで求めることで、第１アンテナ１１１の位置と基準局１０２の相対位置を算出することができる。
【０１０６】
相対位置が算出されれば、基準局１０２の位置が既知であれば、基準局１０２の位置から第１アンテナ１１１の位置を容易に求めることができる。
【０１０７】
尚、最尤推定やカルマンフィルタでは相対位置を算出する際に、誤差分散値が同時に算出される。この誤差分散値は、上式の雑音項であるεφ２Ｂ_ｉ、εφ１Ｂ_ｉ、εφ１２Ｂ_ｉｊなどから算出する。遮蔽されているアンテナについては、その誤差分散を搬送波の１〜２波長分長くするなどの方法で、搬送波位相バイアスの決定方法の違いによる誤差を推定結果に反映することができる。すなわち、補完位置算出部２１５は、図６のステップＳ６１０において、電波遮蔽判定部２１１で遮蔽されていると判定された衛星の搬送波位相を搬送波の１〜２波長分長くし、誤差を大きく設定する。そして位置出力部２１６は、ステップＳ６１１において、このように誤差を含めた状態で、位置算出部２０１にて算出された第１アンテナ１１１の位置の誤差分散値と、補完位置算出部２１５で算出された第１アンテナ１１１の位置の誤差分散値とを比較することで、算出精度を比較する。尚、この比較結果は、位置算出部２０１にて算出された誤差分散値の方が大きくなる傾向となり（ステップＳ６１１：Ｙｅｓ）、補完位置算出部２１５で算出されたアンテナ位置の方を採用する傾向となる（ステップＳ６１２）。
【０１０８】
（測位装置のハードウェア構成）
最後に、測位装置１１３のハードウェア構成の一例を図１６を参照しつつ説明する。測位装置１１３は、コンピュータ構成と同様の構成を有している。
【０１０９】
ＣＰＵ１６０１（ＣＰＵ：Central Processing Unit）は、ＲＯＭ１６０３（ＲＯＭ：Read Only Memory）やストレージ１６０４に記憶されているプログラムを、ＲＡＭ１６０２（ＲＡＭ：Random Access Memory）に展開して演算実行する処理装置である。ＣＰＵ１６０１は、プログラムを演算実行することで、測位装置１１３の内部の各ハードウェアを統括的に制御する。ＲＡＭ１６０２は揮発性メモリであり、ＣＰＵ１６０１との間で直接的にデータの入出力を行うワークメモリである。ＲＡＭ１６０２は、ＣＰＵ１６０１がプログラムを演算実行している間、必要なデータを一時的に記憶する。
【０１１０】
ＲＯＭ１６０３は不揮発性メモリであり、ＣＰＵ１６０１で実行されるファームウェアを記憶している。ストレージ１６０４は、フラッシュメモリ、ＳＳＤ（Solid State Drive）、ハードディスクドライブなどの補助記憶装置である。ストレージ１６０４は、ＣＰＵ１６０１が演算実行するプログラムや、パラメータなどの制御データを不揮発的に記憶する。
【０１１１】
汎用Ｉ／Ｆ１６０５は、第１アンテナ１１１、第２アンテナ１１２、補正信号受信装置１１４、車体姿勢計測装置１１５、作業機姿勢計測装置１１８、制御コントローラ１１７などと接続するためのインターフェイスである。汎用Ｉ／Ｆ１６０５は、車載ネットワーク（ＣＡＮ）などでデータ通信を行うためのインターフェイスとするが、例えばＵＳＢ（Universal Serial Bus）規格に準拠したシリアルバス端子や、ＧＰＩＯ（General Purpose Input/Output）インターフェイスなど、好適なインターフェイスが採用されてもよい。
【０１１２】
測位装置１１３は、上記のような構成を有しているが、一部もしくは全てを、例えばＡＳＩＣなどの集積回路で実装してもよい。尚、一部もしくは全てが集積回路などで実装されている場合においても、当該構成はコンピュータの一形態とみなされる。また制御コントローラ１１７も、測位装置１１３と同様にＣＰＵなどの演算処理装置、ＲＡＭやＲＯＭ、ストレージなどの記憶装置、外部装置と通信を行うインターフェイスを有しているものとする。
【０１１３】
以上に詳説したように、本実施形態によって、作業機の姿勢による精度劣化を防ぎ、制御やガイダンスを停止せずに滑らかに動作が可能になる。
【０１１４】
尚、本発明は上記した実施形態に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施形態は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施形態の構成の一部を他の実施形態の構成に置き換えることが可能であり、また、ある実施形態の構成に他の実施形態の構成を加えることも可能である。また、各実施形態の構成の一部について、他の構成の追加・削除・置換をすることが可能である。また、上記の各構成、機能、処理部、処理手段等は、それらの一部または全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、ＳＳＤ（Solid State Drive）等の記録装置、または、ＩＣカード、ＳＤカード、ＤＶＤ等の記録媒体に置くことができる。
【符号の説明】
【０１１５】
１：ショベル
１０１：ＧＮＳＳ衛星
１０２：基準局
１１１：第１アンテナ
１１２：第２アンテナ
１１３：測位装置
１１４：補正信号受信装置
１１５：車体姿勢計測装置
１１６：作業機操作装置
１１７：制御コントローラ
１１８：作業機姿勢計測装置
１２１：車体
１２２：作業機
１２３：上部旋回体
１２４：下部走行体
２０１：位置算出部
２０２：基線ベクトル算出部
２０３：一時記憶部
２１１：電波遮蔽判定部
２１２：第一の共通衛星選択部
２１３：第二の共通衛星選択部
２１４：補完搬送波位相バイアス決定部
２１５：補完位置算出部
【図１】
2020008286.tif 000038
【図２】
2020008286.tif 000039
【図３】
2020008286.tif 000040
【図４】
2020008286.tif 000041
【図５】
2020008286.tif 000042
【図６】
2020008286.tif 000043
【図７】
2020008286.tif 000044
【図８】
2020008286.tif 000045
【図９】
2020008286.tif 000046
【図１０】
2020008286.tif 000047
【図１１】
2020008286.tif 000048
【図１２】
2020008286.tif 000049
【図１３】
2020008286.tif 000050
【図１４】
2020008286.tif 000051
【図１５】
2020008286.tif 000052
【図１６】
2020008286.tif 000053