(57)【特許請求の範囲】
【請求項１】
測位装置の位置、移動速度及び方位を観測情報とするカルマンフィルタ処理を行って測位することと、
前記測位装置の移動速度が所定の速度条件を満たしたか否かを検出することと、
前記測位装置の移動速度が前記所定の速度条件を満たしたことを検出した場合には、前回の測位時における前記測位装置の方位を保持することと、
を含み、
前記測位することは、前記保持されている方位を今回の測位時における前記観測情報として前記カルマンフィルタ処理を行って測位することを含む、
測位方法。
【請求項２】
前記測位することは、前記検出がなされている間、前記保持されている方位を前記観測情報として前記カルマンフィルタ処理を行って測位することを含む請求項１に記載の測位方法。
【請求項３】
測位用衛星からの衛星信号を受信することと、
前記受信した衛星信号を用いた所定の測位演算を行って前記測位装置の位置、移動速度及び方位を演算することと、
を更に含み、
前記測位することは、前記演算された前記測位装置の位置、移動速度及び方位を前記観測情報として前記カルマンフィルタ処理を行って測位することを含み、
前記保持することは、前記演算された前記測位装置の方位を保持することを含む、
請求項１又は２に記載の測位方法。
【請求項４】
前記カルマンフィルタ処理は、前記測位装置の位置、移動速度、方位及び所定の単位時間当たりの方位の変化分を成分とする状態ベクトルに対する所定の予測演算と補正演算とを行うことで測位する処理である請求項１〜３の何れか一項に記載の測位方法。
【請求項５】
前記測位装置の運動状態を示すモードとして、停止モードと移動モードとの２つの運動モードが予め定められており、
前記測位装置の運動モードが、前記移動モードから前記停止モードに変化したか否かを検出することを更に含み、
前記保持することは、前記測位装置の運動モードが、前記移動モードから前記停止モードに変化したことを検出した場合には、前回の測位時における前記測位装置の方位を保持することを含む、
請求項１〜４の何れか一項に記載の測位方法。
【請求項６】
前記測位することは、方位センサにより検出された前記測位装置の方位を前記観測情報として用いて前記カルマンフィルタ処理を行って測位することを含み、
前記保持することは、前記方位センサにより検出された方位を保持することを含む、
請求項１又は２に記載の測位方法。
【請求項７】
請求項１〜６の何れか一項に記載の測位方法を、測位装置に内蔵されたコンピュータに実行させるためのプログラム。
【請求項８】
自測位装置の位置、移動速度及び方位を観測情報とするカルマンフィルタ処理を行って測位する測位部と、
自測位装置の移動速度が所定の速度条件を満たしたか否かを検出する検出部と、
前記検出部により自測位装置の移動速度が前記所定の速度条件を満たしたことが検出された場合には、前回の測位時における自測位装置の方位を保持する保持部と、
を備え、
前記測位部は、前記保持部により保持されている方位を今回の測位時における前記観測情報として前記カルマンフィルタ処理を行って測位する、
測位装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、測位方法、プログラム及び測位装置に関する。
【背景技術】
【０００２】
測位用信号を利用した測位システムとしては、ＧＰＳ（Global Positioning System）が広く知られており、携帯型電話機やカーナビゲーション装置等に内蔵された測位装置に利用されている。ＧＰＳでは、自機の位置を示す３次元の座標値と、時計誤差との４つのパラメータの値を、複数のＧＰＳ衛星の位置や各ＧＰＳ衛星から自機までの擬似距離等の情報に基づいて求める測位演算を行うことで、自機の現在位置を測位する。
【０００３】
測位演算としては、最小二乗法を用いた測位演算や、カルマンフィルタを用いた測位演算が知られている。このカルマンフィルタに関連する技術として、例えば特許文献１には、速度センサ及び方位センサにより検出された測位装置の移動速度及び方位をカルマンフィルタの入力として用いて、測位装置の状態を推定する技術が開示されている。
【特許文献１】米国特許第４６８０７１５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
特許文献１に開示されている技術は、速度センサや方位センサといった慣性航法用センサを搭載した測位装置がカルマンフィルタに基づく測位演算を行うための技術である。しかし、慣性航法用センサを具備しない測位装置であっても、測位装置が測位用衛星から測位用信号を受信した際の受信周波数の変化等に基づいて、測位装置の移動速度や方位を演算することが可能であり、かかる技術は広く用いられている。
【０００５】
しかし、このような測位用信号に基づいて測位装置の移動速度や方位を演算する場合の問題の１つとして、例えば測位装置が低速で移動している場合や停止している場合に、方位のばらつきが大きくなることが挙げられる。このばらつきの大きな方位の情報を用いてカルマンフィルタを用いた測位演算を行うと、実際には測位装置は真っ直ぐに移動しているのに測位位置は真っ直ぐな軌跡を描かず、直進性が劣化するという問題があった。
【０００６】
本発明は、上述した課題に鑑みて為されたものである。
【課題を解決するための手段】
【０００７】
以上の課題を解決するための第１の発明は、測位装置の位置、移動速度及び方位を観測情報とするカルマンフィルタ処理を行って測位することと、前記測位装置の移動速度が所定の速度条件を満たしたことを検出することと、前記検出時又は前記検出直前の前記測位装置の方位を保持することと、を含み、前記測位することは、前記保持されている方位を前記観測情報として前記カルマンフィルタ処理を行って測位することを含む測位方法である。
【０００８】
また、他の発明として、自測位装置の位置、移動速度及び方位を観測情報とするカルマンフィルタ処理を行って測位する測位部と、自測位装置の移動速度が所定の速度条件を満たしたことを検出する検出部と、前記検出部の検出時又は検出直前の自測位装置の方位を保持する保持部と、を備え、前記測位部は、前記保持部により保持されている方位を前記観測情報として前記カルマンフィルタ処理を行って測位する測位装置を構成してもよい。
【０００９】
この第１の発明によれば、測位装置の移動速度が所定の速度条件を満たしたことを検出した場合に、当該検出時又は当該検出直前の測位装置の方位を保持する。そして、測位装置の位置、移動速度及び方位を観測情報とするカルマンフィルタ処理を行って測位するが、この際、保持されている方位を観測情報としてカルマンフィルタ処理を行う。例えば、測位装置の移動速度が所定の閾値速度未満となった場合に、その時点又はその直前の移動速度を保持することで、低速移動時における方位のばらつきを抑えることができる。また、保持されている方位を観測情報としてカルマンフィルタ処理を行うことで、ばらつきのない方位の情報を位置計算に活用することが可能となり、測位位置の直進性が向上する。
【００１０】
また、第２の発明として、第１の発明の測位方法であって、前記測位することは、前記検出がなされている間、前記保持されている方位を前記観測情報として前記カルマンフィルタ処理を行って測位することを含む測位方法を構成してもよい。
【００１１】
この第２の発明によれば、測位装置の移動速度が所定の速度条件を満たしたことを検出している間、保持されている方位を観測情報としてカルマンフィルタ処理を行って測位する。例えば、測位装置が低速移動している間は、保持されている方位を用いてカルマンフィルタ処理を行うことにすれば好適である。
【００１２】
また、第３の発明として、第１又は第２の発明の測位方法であって、測位用衛星からの衛星信号を受信することと、前記受信した衛星信号を用いた所定の測位演算を行って前記測位装置の位置、移動速度及び方位を演算することと、を更に含み、前記測位することは、前記演算された前記測位装置の位置、移動速度及び方位を前記観測情報として前記カルマンフィルタ処理を行って測位することを含み、前記保持することは、前記演算された前記測位装置の方位を保持することを含む測位方法を構成してもよい。
【００１３】
この第３の発明によれば、測位用衛星から受信した衛星信号を用いた所定の測位演算を行って、測位装置の位置、移動速度及び方位を演算する。そして、演算された測位装置の位置、移動速度及び方位を観測情報としてカルマンフィルタ処理を行って測位するとともに、演算された方位を保持する。従って、慣性航法用センサを用いずとも、カルマンフィルタ処理で用いる観測情報を取得することができる。
【００１４】
また、第４の発明として、第１〜第３の何れかの発明の測位方法であって、前記カルマンフィルタ処理は、前記測位装置の位置、移動速度、方位及び所定の単位時間当たりの方位の変化分を成分とする状態ベクトルに対する所定の予測演算と補正演算とを行うことで測位する処理である測位方法を構成してもよい。
【００１５】
この第４の発明によれば、測位装置の位置、移動速度、方位及び所定の単位時間当たりの方位の変化分を成分とする状態ベクトルに対する所定の予測演算と補正演算とを行うことで測位する。単位時間当たりの方位の変化分を状態ベクトルの成分としたことで、方位の演算精度を高めることができる。
【００１６】
また、第５の発明として、第１〜第４の何れかの発明の測位方法であって、前記測位装置の運動状態を示すモードとして、停止モードと移動モードとの２つの運動モードが予め定められており、前記測位装置の運動モードが、前記移動モードから前記停止モードに変化したことを検出することを更に含み、前記保持することは、前記移動モードから前記停止モードへの変化が検出された場合に、当該検出時又は当該検出直前の前記測位装置の方位を保持することを含む測位方法を構成してもよい。
【００１７】
この第５の発明によれば、測位装置の運動モードが、移動モードから停止モードに変化したことを検出した場合に、当該検出時又は当該検出直前の測位装置の方位を保持する。この場合も、第１の発明と同様の効果が発揮される。
【００１８】
また、第６の発明として、第１〜第５の何れかの発明の測位方法であって、前記測位することは、方位センサにより検出された前記測位装置の方位を前記観測情報として用いて前記カルマンフィルタ処理を行って測位することを含み、前記保持することは、前記方位センサにより検出された方位を保持することを含む測位方法を構成してもよい。
【００１９】
この第６の発明によれば、方位センサにより検出された測位装置の方位を観測情報として用いてカルマンフィルタ処理を行って測位するとともに、方位センサにより検出された方位を保持する。
【００２０】
また、第７の発明として、第１〜第６の発明の測位方法を、測位装置に内蔵されたコンピュータに実行させるためのプログラムを構成してもよい。
【発明を実施するための最良の形態】
【００２１】
以下、図面を参照して、測位装置を備えた電子機器の一種である携帯型電話機に本発明を適用した場合の各実施形態について説明する。但し、本発明を適用可能な実施形態がこれらに限定されるわけではない。
【００２２】
図１は、各実施形態に共通する携帯型電話機１の機能構成を示すブロック図である。携帯型電話機１は、ＧＰＳアンテナ１０と、ＧＰＳ受信部２０と、ＴＣＸＯ（Temperature Compensated Crystal Oscillator）４０と、ホストＣＰＵ（Central Processing Unit）５０と、操作部６０と、表示部７０と、携帯電話用アンテナ８０と、携帯電話用無線通信回路部９０と、ＲＯＭ（Read Only Memory）１００と、ＲＡＭ（Random Access Memory）１１０とを備えて構成される。
【００２３】
ＧＰＳアンテナ１０は、ＧＰＳ衛星から発信されているＧＰＳ衛星信号を含むＲＦ（Radio Frequency）信号を受信するアンテナであり、受信した信号をＧＰＳ受信部２０に出力する。尚、ＧＰＳ衛星信号は、衛星毎に異なる拡散符号の一種であるＰＲＮ（Pseudo Random Noise）コードで直接スペクトラム拡散方式により変調された１．５７５４２［ＧＨｚ］の通信信号である。ＰＲＮコードは、コード長１０２３チップを１ＰＮフレームとする繰返し周期１ｍｓの擬似ランダム雑音符号である。
【００２４】
ＧＰＳ受信部２０は、ＧＰＳアンテナ１０から出力された信号に基づいて携帯型電話機１の現在位置を測位する測位回路であり、いわゆるＧＰＳ受信機に相当する機能ブロックである。ＧＰＳ受信部２０は、ＲＦ（Radio Frequency）受信回路部２１と、ベースバンド処理回路部３０とを備えて構成される。尚、ＲＦ受信回路部２１と、ベースバンド処理回路部３０とは、それぞれ別のＬＳＩ（Large Scale Integration）として製造することも、１チップとして製造することも可能である。
【００２５】
ＲＦ受信回路部２１は、ＲＦ信号の処理回路ブロックであり、ＴＣＸＯ４０により生成された発振信号を分周或いは逓倍することで、ＲＦ信号乗算用の発振信号を生成する。そして、生成した発振信号を、ＧＰＳアンテナ１０から出力されたＲＦ信号に乗算することで、ＲＦ信号を中間周波数の信号（以下、「ＩＦ（Intermediate Frequency）信号」と称す。）にダウンコンバートし、ＩＦ信号を増幅等した後、Ａ／Ｄ変換器でデジタル信号に変換して、ベースバンド処理回路部３０に出力する。
【００２６】
ベースバンド処理回路部３０は、ＲＦ受信回路部２１から出力されたＩＦ信号に対して相関処理等を行ってＧＰＳ衛星信号を捕捉・抽出し、データを復号して航法メッセージや時刻情報等を取り出して測位演算を行う回路部である。ベースバンド処理回路部３０は、演算制御部３１と、ＲＯＭ３５と、ＲＡＭ３７とを備えて構成される。また、演算制御部３１は、メジャメント取得演算部３２と、測位演算部３３とを備えて構成される。
【００２７】
尚、メジャメント取得演算部３２と、測位演算部３３とは、それぞれ別のＬＳＩとして製造することも、１チップとして製造することも可能である。また、本実施形態においては現在位置の測位演算そのものは測位演算部３３で実行することとして説明するが、測位演算部３３で実行する処理の一部又は全部をホストＣＰＵ５０で実行することとしてもよいのは勿論である。
【００２８】
メジャメント取得演算部３２は、ＲＦ受信回路部２１から出力された受信信号（ＩＦ信号）から、ＧＰＳ衛星信号の捕捉・追尾を行う回路部であり、相関演算部３２１を備えて構成されている。メジャメント取得演算部３２は、捕捉・追尾したＧＰＳ衛星信号の受信周波数やコード位相等の情報を取得し、メジャメント実測値として測位演算部３３に出力する。
【００２９】
相関演算部３２１は、受信信号に含まれるＰＲＮコードとレプリカコードとの相関を、例えばＦＦＴ演算を用いて算出し積算する相関演算処理を行って、ＧＰＳ衛星信号を捕捉する。レプリカコードとは、擬似的に発生させた捕捉しようとするＧＰＳ衛星信号に含まれるＰＲＮコードを模擬した信号である。
【００３０】
捕捉しようとするＧＰＳ衛星信号が間違いなければ、そのＧＰＳ衛星信号に含まれるＰＲＮコードとレプリカコードとは一致し（捕捉成功）、間違っていれば一致しない（捕捉失敗）。そのため、算出された積算相関値のピークを判定することによってＧＰＳ衛星信号の捕捉が成功したか否かを判定でき、レプリカコードを次々に変更して、同じ受信信号との相関演算を行うことで、ＧＰＳ衛星信号を捕捉することが可能となる。
【００３１】
また、相関演算部３２１は、上述した相関演算処理を、レプリカコードの発生信号の周波数、及び、ＰＲＮコードとレプリカコードとを相関演算する際の位相を変更しつつ行っている。レプリカコードの発生信号の周波数と受信信号の周波数とが一致し、且つ、ＰＲＮコードとレプリカコードとの位相が一致した場合に、積算相関値が最大となる。
【００３２】
より具体的には、捕捉対象のＧＰＳ衛星信号に応じた所定の周波数及び位相の範囲をサーチ範囲として設定する。そして、このサーチ範囲内で、ＰＲＮコードの開始位置（コード位相）を検出するための位相方向の相関演算と、周波数を検出するための周波数方向の相関演算とを行う。サーチ範囲は、周波数についてはＧＰＳ衛星信号の搬送波周波数である１．５７５４２［ＧＨｚ］を中心とする所定の周波数掃引範囲、位相についてはＰＲＮコードのチップ長である１０２３チップのコード位相範囲内に定められる。
【００３３】
測位演算部３３は、メジャメント取得演算部３２から入力したメジャメント実測値を用いて、カルマンフィルタ（以下、「ＫＦ（Kalman Filter）」と称す。）に基づく測位演算を行うことで、携帯型電話機１の現在位置を測位するプロセッサである。測位演算部３３は、測位演算により求めた出力位置をホストＣＰＵ５０に出力する。
【００３４】
ＴＣＸＯ４０は、所定の発振周波数で発振信号を生成する温度補償型水晶発振器であり、生成した発振信号をＲＦ受信回路部２１及びベースバンド処理回路部３０に出力する。
【００３５】
ホストＣＰＵ５０は、ＲＯＭ１００に記憶されているシステムプログラム等の各種プログラムに従って携帯型電話機１の各部を統括的に制御するプロセッサである。ホストＣＰＵ５０は、測位演算部３３から入力した出力位置をプロットしたナビゲーション画面を、表示部７０に表示させる。
【００３６】
操作部６０は、例えばタッチパネルやボタンスイッチ等により構成される入力装置であり、押下されたキーやボタンの信号をホストＣＰＵ５０に出力する。この操作部６０の操作により、通話要求やメールの送受信要求等の各種指示入力がなされる。
【００３７】
表示部７０は、ＬＣＤ（Liquid Crystal Display）等により構成され、ホストＣＰＵ５０から入力される表示信号に基づいた各種表示を行う表示装置である。表示部７０には、ナビゲーション画面や時刻情報等が表示される。
【００３８】
携帯電話用アンテナ８０は、携帯型電話機１の通信サービス事業者が設置した無線基地局との間で携帯電話用無線信号の送受信を行うアンテナである。
【００３９】
携帯電話用無線通信回路部９０は、ＲＦ変換回路、ベースバンド処理回路等によって構成される携帯電話の通信回路部であり、携帯電話用無線信号の変調・復調等を行うことで、通話やメールの送受信等を実現する。
【００４０】
ＲＯＭ１００は、ホストＣＰＵ５０が携帯型電話機１を制御するためのシステムプログラムや、ナビゲーション機能を実現するための各種プログラムやデータ等を記憶している。
【００４１】
ＲＡＭ１１０は、ホストＣＰＵ５０により実行されるシステムプログラム、各種処理プログラム、各種処理の処理中データ、処理結果などを一時的に記憶するワークエリアを形成している。
【００４２】
１．第１実施形態
１−１．データ構成
図２は、第１実施形態においてベースバンド処理回路部３０のＲＯＭ３５に格納されたデータの一例を示す図である。ＲＯＭ３５には、測位演算部３３により読み出され、第１のベースバンド処理（図６参照）として実行される第１のベースバンド処理プログラム３５１が記憶されている。また、第１のベースバンド処理プログラム３５１には、第１のＫＦ測位処理（図７参照）として実行される第１のＫＦ測位プログラム３５１１と、第２のＫＦ測位処理（図８参照）として実行される第２のＫＦ測位プログラム３５１２とがサブルーチンとして含まれている。
【００４３】
第１のベースバンド処理とは、測位演算部３３が、第１のＫＦ測位処理を行ってＥＣＥＦ（Earth Centered Earth Fixed）座標系における携帯型電話機１の位置及び移動速度ベクトルを求め、このＥＣＥＦ座標系における処理結果に対して所定の座標変換演算を行うことで、ＥＮＵ（East North Up）座標系における携帯型電話機１の位置、移動速度及び方位を求める処理である。そして、測位演算部３３は、求めた位置、移動速度及び方位を観測情報とする第２のＫＦ測位処理を行うことで、ＥＮＵ座標系における携帯型電話機１の位置を計算し、その測位位置をホストＣＰＵ５０に出力する。
【００４４】
ＥＣＥＦ座標系は、地球中心地球固定座標系として知られ、地球の中心（地球重心）を原点とし、地球自転軸の方向をＺ軸、グリニジ子午面と赤道面とが交わる方向をＸ軸、これらの２軸と直交する方向をＹ軸とする３次元直交座標系である。また、ＥＮＵ座標系は、東北上座標系として知られ、地表面付近のある点を原点として、天頂方向（地表面に対する垂直線の上方向）をＵ軸、東方向をＥ軸、北方向をＮ軸とする３次元直交座標系である。
【００４５】
ＥＮＵ座標系における携帯型電話機１の位置、移動速度及び方位は、ＥＣＥＦ座標系において求められた携帯型電話機１の位置及び移動速度ベクトルに対して公知の座標変換演算（行列演算）を行うことで求めることができる。尚、本明細書では、「移動速度」というときは方位を含まないスカラー量を表すものとし、「移動速度ベクトル」というときは方位を含むベクトル量を表すものとする。
【００４６】
第１のＫＦ測位処理とは、測位演算部３３が、メジャメント取得演算部３２により取得演算されたＧＰＳ衛星信号の受信周波数及びコード位相についての情報であるメジャメント実測値を観測情報とするＫＦ測位処理を行うことで、ＥＣＥＦ座標系における携帯型電話機１の位置及び移動速度ベクトルを求める処理である。
【００４７】
また、第２のＫＦ測位処理とは、ＥＮＵ座標系における携帯型電話機１の位置、移動速度及び方位を観測情報とするＫＦ測位処理を行うことで、ＥＮＵ座標系における携帯型電話機１の位置、移動速度、方位及び時間毎方位を求める処理である。これらの処理については、フローチャートを用いて詳細に後述する。
【００４８】
図３は、第１実施形態においてベースバンド処理回路部３０のＲＡＭ３７に格納されるデータの一例を示す図である。ＲＡＭ３７には、第１のＫＦパラメータデータ３７１と、第２のＫＦパラメータデータ３７３と、捕捉衛星別メジャメントデータ３７５と、計測履歴データ３７７とが記憶される。
【００４９】
第１のＫＦパラメータデータ３７１は、第１のＫＦ測位処理において用いられる各種パラメータ（以下、「第１のＫＦパラメータ」と称す。）の値が記憶されたデータであり、第１のＫＦ測位処理において測位演算部３３により更新される。
【００５０】
第２のＫＦパラメータデータ３７３は、第２のＫＦ測位処理において用いられる各種パラメータ（以下、「第２のＫＦパラメータ」と称す。）の値が記憶されたデータであり、第２のＫＦ測位処理において測位演算部３３により更新される。
【００５１】
図４は、捕捉衛星別メジャメントデータ３７５のデータ構成の一例を示す図である。捕捉衛星別メジャメントデータ３７５は、第１のＫＦ測位処理において用いられる観測情報及び観測情報の予測値のデータであり、各捕捉衛星３７５１について、メジャメント実測値３７５３と、メジャメント予測値３７５５とが対応付けて記憶される。
【００５２】
捕捉衛星３７５１には、当該捕捉衛星の番号が記憶され、メジャメント実測値３７５３及びメジャメント予測値３７５５には、当該捕捉衛星から受信したＧＰＳ衛星信号の受信周波数及びコード位相の実測値及び予測値がそれぞれ記憶される。例えば、捕捉衛星「Ｓ１」についてのメジャメント実測値は、受信周波数が「ＳＦｒｅｑ１」、コード位相が「ＳＣＰ１」であり、メジャメント予測値は、受信周波数が「ＥＦｒｅｑ１」、コード位相が「ＥＣＰ１」である。
【００５３】
第１のＫＦ測位処理では、測位演算部３３は、メジャメント取得演算部３２からＧＰＳ衛星信号の受信周波数及びコード位相の情報を取得してメジャメント実測値３７５３とし、捕捉衛星別メジャメントデータ３７５に記憶させる。また、予測演算によって算出した状態ベクトルの予測値と所定の観測行列とを用いてＧＰＳ衛星信号の受信周波数及びコード位相の情報を予測してメジャメント予測値３７５５とし、捕捉衛星別メジャメントデータ３７５に記憶させる。
【００５４】
図５は、計測履歴データ３７７のデータ構成の一例を示す図である。計測履歴データ３７７は、ＥＮＵ座標系における携帯型電話機１の位置、移動速度及び方位についてのデータであり、各測位時刻３７７１について、東方向の位置３７７２と、北方向の位置３７７３と、東方向の移動速度３７７４と、北方向の移動速度３７７５と、測位平面上の移動速度３７７６と、測位平面上の方位３７７７と、天頂方向の位置３７７８と、天頂方向の移動速度３７７９とが対応付けて記憶される。
【００５５】
東方向の位置３７７２は、ＥＮＵ座標系における東西方向の位置座標であり、北方向の位置３７７３は、ＥＮＵ座標系における南北方向の位置座標である。また、東方向の移動速度３７７４は、ＥＮＵ座標系における東西方向の移動速度であり、北方向の移動速度３７７５は、ＥＮＵ座標系における南北方向の移動速度である。
【００５６】
測位平面上の移動速度３７７６は、例えばＥＮＵ座標系において天頂方向の位置座標を“０”とした場合における東西南北の２次元平面（この平面を「測位平面」と定義する。）における移動速度であり、測位平面上の方位３７７７は、測位平面における方位である。また、天頂方向の位置３７７８は、ＥＮＵ座標系における天頂方向の位置座標であり、天頂方向の移動速度３７７９は、ＥＮＵ座標系における天頂方向の移動速度である。
【００５７】
例えば、測位時刻「ｔ１」においては、東方向の位置として「ＥａｓｔＰｏｓ１」、北方向の位置として「ＮｏｒｔｈＰｏｓ１」、東方向の移動速度として「ＥａｓｔＶｅｌ１」、北方向の移動速度として「ＮｏｒｔｈＶｅｌ１」、測位平面上の移動速度として「Ｓｐｅｅｄ１」、測位平面上の方位として「Ｈｅａｄｉｎｇ１」、天頂方向の位置として「ＵｐＰｏｓ１」、天頂方向の移動速度として「ＵｐＶｅｌ１」がそれぞれ記憶されている。
【００５８】
１−２．処理の流れ
図６は、測位演算部３３によりＲＯＭ３５に記憶されている第１のベースバンド処理プログラム３５１が読み出されて実行されることで、携帯型電話機１において実行される第１のベースバンド処理の流れを示すフローチャートである。第１のベースバンド処理は、ＲＦ受信回路部２１によるＧＰＳ衛星信号の受信と併せて、測位演算部３３が、操作部６０に測位開始指示の操作がなされたことを検出した場合に実行を開始する処理であり、各種アプリケーションの実行といった各種の処理と並行して行われる処理である。
【００５９】
尚、携帯型電話機１の電源のＯＮ／ＯＦＦとＧＰＳの起動／停止とを連動させ、携帯型電話機１の電源投入操作を検出した場合に処理の実行を開始させることにしてもよい。原則として、測位演算は「１秒」毎に行われるものとする。また、特に説明しないが、以下の第１のベースバンド処理の実行中は、ＧＰＳアンテナ１０によるＲＦ信号の受信や、ＲＦ受信回路部２１によるＩＦ信号へのダウンコンバート、メジャメント取得演算部３２によるＧＰＳ衛星信号の受信周波数やコード位相の情報の取得・算出等が随時行われている状態にあるものとする。
【００６０】
先ず、測位演算部３３は、初期設定を行う（ステップＡ１）。具体的には、第１のＫＦパラメータ及び第２のＫＦパラメータを初期化し、ＲＡＭ３７の第１のＫＦパラメータデータ３７１及び第２のＫＦパラメータデータ３７３にそれぞれ記憶させる。次いで、測位演算部３３は、ＲＯＭ３５に記憶されている第１のＫＦ測位プログラム３５１１を読み出して実行することで、第１のＫＦ測位処理を行う（ステップＡ３）。
【００６１】
図７は、第１のＫＦ測位処理の流れを示すフローチャートである。
先ず、測位演算部３３は、第１のＫＦ測位処理用の状態ベクトル「Ｘ1」及び誤差共分散行列「Ｐ1」のＫＦ初期値を設定する（ステップＢ１）。第１のＫＦ測位処理では、ＥＣＥＦ座標系における携帯型電話機１の位置ベクトル「（ｘ，ｙ，ｚ）」及び移動速度ベクトル「（ｕ，ｖ，ｗ）」と、クロックバイアス「ｂ」と、クロックドリフト「ｄ」とを成分とする、次式（１）に示すような８×１の行列で表される状態ベクトル「Ｘ1」を用いて、予測演算及び補正演算を行う。
【数１】
0005332333.tif 000002
【００６２】
また、誤差共分散行列「Ｐ1」は、状態ベクトル「Ｘ1」の８次元の各成分の誤差の共分散を示す８×８の行列である。状態ベクトル「Ｘ1」及び誤差共分散行列「Ｐ1」の初期値は、例えば１時刻前の第１のＫＦ測位処理で求められた状態ベクトル「Ｘ1」及び誤差共分散行列「Ｐ1」の補正値「Ｘ＋1」及び「Ｐ＋1」とすることができる。
【００６３】
次いで、測位演算部３３は、次式（２）及び（３）に従って予測演算を行って、状態ベクトルの予測値「Ｘ−1」及び誤差共分散行列の予測値「Ｐ−1」を算出する（ステップＢ３）。
【数２】
0005332333.tif 000003
【数３】
0005332333.tif 000004
但し、各式における添え字の「−」は予測値、「＋」は補正値であることを示しており、「Ｔ」は転置行列であることを示している。また、「φ」は、状態遷移行列と呼ばれる８×８の行列であり、「Ｑ」は、プロセスノイズ行列と呼ばれるＫＦモデルのモデル誤差の共分散を示す８×８の行列である。また、「ｔ」は測位時刻を示している。
【００６４】
その後、測位演算部３３は、メジャメント取得演算部３２から各捕捉衛星についてのＧＰＳ衛星信号の受信周波数及びコード位相の情報を取得して、メジャメント実測値３７５３としてＲＡＭ３７の捕捉衛星別メジャメントデータ３７５に記憶させる。そして、当該メジャメント実測値を成分とする、次式（４）に示すような２×１の行列を第１のＫＦ測位処理用の観測ベクトル「Ｚ1」とする（ステップＢ５）。
【数４】
0005332333.tif 000005
【００６５】
また、測位演算部３３は、ステップＢ３で算出した状態ベクトルの予測値「Ｘ−1」に所定の観測行列「Ｈ1」を乗算することで、観測ベクトルの予測値「Ｈ1Ｘ−1」を算出し、メジャメント予測値３７５５としてＲＡＭ３７の捕捉衛星別メジャメントデータ３７５に記憶させる（ステップＢ７）。
【００６６】
観測行列「Ｈ1」は、状態ベクトルの予測値「Ｘ−1」の各成分を用いて、各捕捉衛星についてのＧＰＳ衛星信号の受信周波数及びコード位相の予測値を求めるための行列である。観測行列「Ｈ1」は２×８の行列であり、状態ベクトルの予測値「Ｘ−1」は８×１の行列であるため、観測ベクトルの予測値「Ｈ1Ｘ−1」は２×１の行列として求めることができる。
【００６７】
次いで、測位演算部３３は、次式（５）〜（７）に従って補正演算を行って、状態ベクトルの補正値「Ｘ＋1」及び誤差共分散行列の補正値「Ｐ＋1」を算出して（ステップＢ９）、第１のＫＦ測位処理を終了する。
【数５】
0005332333.tif 000006
【数６】
0005332333.tif 000007
【数７】
0005332333.tif 000008
【００６８】
但し、「Ｋ1」はカルマンゲイン行列と呼ばれる８×２の行列であり、「Ｒ1」は、観測ベクトル「Ｚ1」の各成分の誤差の共分散を示す観測誤差共分散行列と呼ばれる２×２の行列である。また、「Ｉ」は単位行列である。
【００６９】
図６の第１のベースバンド処理に戻って、第１のＫＦ測位処理を行った後、測位演算部３３は、第１のＫＦ測位処理で算出した状態ベクトルの補正値「Ｘ＋1」に含まれるＥＣＥＦ座標系における位置ベクトル「（ｘ，ｙ，ｚ）」に対して所定の座標変換演算を行って、ＥＮＵ座標系における東方向の位置「ＥａｓｔＰｏｓ」、北方向の位置「ＮｏｒｔｈＰｏｓ」及び天頂方向の位置「ＵｐＰｏｓ」を算出し、現在の測位時刻と対応付けてＲＡＭ３７の計測履歴データ３７７に記憶させる（ステップＡ５）。
【００７０】
同様に、測位演算部３３は、状態ベクトルの補正値「Ｘ＋1」に含まれるＥＣＥＦ座標系における移動速度ベクトル「（ｕ，ｖ，ｗ）」に対して所定の座標変換演算を行って、ＥＮＵ座標系における東方向の移動速度「ＥａｓｔＶｅｌ」、北方向の移動速度「ＮｏｒｔｈＶｅｌ」及び天頂方向の移動速度「ＵｐＶｅｌ」を算出し、現在の測位時刻と対応付けてＲＡＭ３７の計測履歴データ３７７に記憶させる（ステップＡ７）。
【００７１】
次いで、測位演算部３３は、ステップＡ７で算出した東方向の移動速度「ＥａｓｔＶｅｌ」及び北方向の移動速度「ＮｏｒｔｈＶｅｌ」を用いて、次式（８）及び（９）に従って、測位平面上の携帯型電話機１の移動速度「Ｓｐｅｅｄ」及び方位「Ｈｅａｄｉｎｇ」を算出し、現在の測位時刻と対応付けてＲＡＭ３７の計測履歴データ３７７に記憶させる（ステップＡ９）。
【数８】
0005332333.tif 000009
【数９】
0005332333.tif 000010
【００７２】
その後、測位演算部３３は、ステップＡ９で算出した測位平面上の移動速度「Ｓｐｅｅｄ」が所定の閾値速度（例えば「１０ｋｍ／ｈ」）未満であるか否かを判定し（ステップＡ１１）、閾値速度以上であると判定した場合は（ステップＡ１１；Ｎｏ）、ステップＡ１５へと処理を移行する。また、閾値速度未満であると判定した場合は（ステップＡ１１；Ｙｅｓ）、ＲＡＭ３７の計測履歴データ３７７において、１時刻前の測位平面上の方位で、現在の測位時刻の測位平面上の方位を更新する（ステップＡ１３）。１時刻前とは、現在の測位時刻から見て１つ前の測位時刻のことを指す。
【００７３】
測位平面上の移動速度が閾値速度に満たない場合は、携帯型電話機１は停止しているか低速移動中であるものと判定し、１時刻前の方位を保持することにより、方位のばらつきが生じないようにしたものである。その後、測位演算部３３は、ＲＯＭ３５に記憶されている第２のＫＦ測位プログラム３５１２を読み出して実行することで、第２のＫＦ測位処理を行う（ステップＡ１５）。
【００７４】
図８は、第２のＫＦ測位処理の流れを示すフローチャートである。
先ず、測位演算部３３は、第２のＫＦ測位処理用の状態ベクトル「Ｘ2」及び誤差共分散行列「Ｐ2」のＫＦ初期値を設定する（ステップＣ１）。第２のＫＦ測位処理では、ＥＮＵ座標系における携帯型電話機１の東方向の位置「ＥａｓｔＰｏｓ」、北方向の位置「ＮｏｒｔｈＰｏｓ」、測位平面上の移動速度「Ｓｐｅｅｄ」、測位平面上の方位「Ｈｅａｄｉｎｇ」、測位平面上の時間毎方位「ｄＨｅａｄｉｎｇ」を成分とする、次式（１０）に示すような７×１の行列で表される状態ベクトル「Ｘ2」を用いて、予測演算及び補正演算を行う。特徴的であるのは、時間毎方位を状態ベクトルの成分とすることで、方位の演算精度を高めている点である。
【数１０】
0005332333.tif 000011
【００７５】
また、誤差共分散行列「Ｐ2」は、状態ベクトル「Ｘ2」の７次元の各成分の誤差の共分散を示す７×７の行列である。状態ベクトル「Ｘ2」及び誤差共分散行列「Ｐ2」の初期値は、例えば１時刻前の第２のＫＦ測位処理で求められた状態ベクトル「Ｘ2」及び誤差共分散行列「Ｐ2」の補正値「Ｘ＋2」及び「Ｐ＋2」とすることができる。
【００７６】
次いで、測位演算部３３は、状態ベクトル「Ｘ2」及び誤差共分散行列「Ｐ2」について、第１のＫＦ測位処理と同様に式（２）及び（３）に従って予測演算を行い、状態ベクトルの予測値「Ｘ−2」及び誤差共分散行列の予測値「Ｐ−2」を算出する（ステップＣ３）。この際、状態ベクトル「Ｘ2」の７次元の各成分については、次式（１１）〜（１７）に従って予測演算を行う。
【００７７】
【数１１】
0005332333.tif 000012
【数１２】
0005332333.tif 000013
【数１３】
0005332333.tif 000014
【数１４】
0005332333.tif 000015
【数１５】
0005332333.tif 000016
【数１６】
0005332333.tif 000017
【数１７】
0005332333.tif 000018
但し、「ｄｔ」は、現在時刻と１時刻前との時刻差を示している。
【００７８】
その後、測位演算部３３は、ＲＡＭ３７の計測履歴データ３７７に記憶されている現在時刻における携帯型電話機１の東方向の位置「ＥａｓｔＰｏｓ」、北方向の位置「ＮｏｒｔｈＰｏｓ」、測位平面上の移動速度「Ｓｐｅｅｄ」、測位平面上の方位「Ｈｅａｄｉｎｇ」、天頂方向の位置「ＵｐＰｏｓ」及び天頂方向の移動速度「ＵｐＶｅｌ」を成分とする、次式（１８）で表される６×１の行列を第２のＫＦ測位処理用の観測ベクトル「Ｚ2」とする（ステップＣ５）。
【数１８】
0005332333.tif 000019
【００７９】
また、測位演算部３３は、ステップＣ３で算出した状態ベクトルの予測値「Ｘ−2」に所定の観測行列「Ｈ2」を乗算することで、観測ベクトルの予測値「Ｈ2Ｘ−2」を算出する（ステップＣ７）。観測行列「Ｈ2」は、状態ベクトルの予測値「Ｘ−2」の各成分を用いて、東方向の位置「ＥａｓｔＰｏｓ」、北方向の位置「ＮｏｒｔｈＰｏｓ」、測位平面上の移動速度「Ｓｐｅｅｄ」、測位平面上の方位「Ｈｅａｄｉｎｇ」、天頂方向の位置「ＵｐＰｏｓ」及び天頂方向の移動速度「ＵｐＶｅｌ」を予測するための行列である。観測行列「Ｈ2」は６×７の行列であり、状態ベクトルの予測値「Ｘ−2」は７×１の行列であるため、観測ベクトルの予測値「Ｈ2Ｘ−2」は６×１の行列として求めることができる。
【００８０】
次いで、測位演算部３３は、状態ベクトル「Ｘ2」及び誤差共分散行列「Ｐ2」について、第１のＫＦ測位処理と同様に式（５）〜（７）に従って状態ベクトルの補正値「Ｘ＋2」及び誤差共分散行列の補正値「Ｐ＋2」を算出する（ステップＣ９）。第２のＫＦ測位処理の補正演算では、７×６の行列で表されるカルマンゲイン行列「Ｋ2」と、観測ベクトル「Ｚ2」の各成分の誤差の共分散を示す６×６の観測誤差共分散行列「Ｒ2」とを用いて補正演算を行う。補正演算を行った後、測位演算部３３は、第２のＫＦ測位処理を終了する。
【００８１】
図６の第１のベースバンド処理に戻って、測位演算部３３は、第２のＫＦ測位処理で算出した状態ベクトルの補正値「Ｘ＋2」に含まれる東方向の位置「ＥａｓｔＰｏｓ」、北方向の位置「ＮｏｒｔｈＰｏｓ」及び天頂方向の位置「ＵｐＰｏｓ」で表される位置を出力位置に決定する（ステップＡ１７）。そして、測位演算部３３は、決定した出力位置をホストＣＰＵ５０に出力する（ステップＡ１９）。
【００８２】
その後、測位演算部３３は、操作部６０を介してユーザにより測位終了指示がなされたか否かを判定し（ステップＡ２１）、なされなかったと判定した場合は（ステップＡ２１；Ｎｏ）、ステップＡ３に戻る。また、測位終了指示がなされたと判定した場合は（ステップＡ２１；Ｙｅｓ）、第１のベースバンド処理を終了する。
【００８３】
１−３．作用効果
第１実施形態によれば、第１のＫＦ測位処理により求めた携帯型電話機１の移動速度が所定の閾値速度未満であることを検出した場合に、当該検出直前の携帯型電話機１の移動速度を保持する。そして、第１のＫＦ測位処理により求めた携帯型電話機１の位置、移動速度及び方位を観測情報とする第２のＫＦ測位処理を行って測位するが、この際、保持されている方位を観測情報としてＫＦ処理を行う。携帯型電話機１の移動速度が低速となった場合に、その直前の移動速度を保持するようにしたことで、低速移動時や停止時における方位のばらつきを防止することができる。また、保持されている方位を観測情報としてＫＦ処理を行うことで、ばらつきのない方位の情報を測位演算に活用することが可能となり、測位位置の直進性が向上する。
【００８４】
２．第２実施形態
２−１．データ構成
第２実施形態は、ベースバンド処理回路部３０のＲＯＭ３５に、第２のベースバンド処理（図１０及び図１１参照）として実行される第２のベースバンド処理プログラムが格納された実施形態である。また、第２のベースバンド処理プログラムには、ＩＭＭ（Interactive Mixing Model）演算処理（図１２及び図１３参照）として実行されるＩＭＭ演算プログラムと、第２のＫＦ測位処理（図８参照）として実行される第２のＫＦ測位プログラム３５１２とがサブルーチンとして含まれている。
【００８５】
ＩＭＭ演算処理とは、測位演算部３３が、インタラクティブミキシングモデル（ＩＭＭ）に基づく測位演算を行って、携帯型電話機１の位置及び移動速度ベクトルを算出する処理である。ＩＭＭとは、複数のＫＦモデルそれぞれに基づくＫＦ測位処理の処理結果を、モデル確率「μ」と呼ばれる重みを用いて合成することで、最終的な出力値を決定するモデルである。
【００８６】
図９は、第２実施形態におけるＩＭＭ演算の概略を説明するための図である。ここでは、説明を分かりやすくするため、複数の処理回路ブロックにおける演算によってＩＭＭ演算を行うものとして説明する。本実施形態では、携帯型電話機１の移動状態を示すＫＦモデルとして、停止状態にあることを示す定点ＫＦモデルと、等速移動状態にあることを示す等速度ＫＦモデルと、定加速度状態にあることを示す定加速度ＫＦモデルとの３種類のＫＦモデルを用意し、これらの各ＫＦモデルに基づくＫＦ測位処理の処理結果を合成することで、携帯型電話機１の現在位置を測位する。
【００８７】
ＩＭＭ演算では、ミキサが、各ＫＦモデル間の遷移確率を示すモデル間遷移確率行列「ｐ」と、１つ前のステップにおいてモデル確率更新部により算出・更新されたモデル確率「μj：μ1，μ2，μ3」と、１つ前のステップにおいて各ＫＦモデルそれぞれについて算出された状態ベクトルの計算値「Ｘj：Ｘ1，Ｘ2，Ｘ3」及び誤差共分散行列の計算値「Ｐj：Ｐ1，Ｐ2，Ｐ3」とを用いて、各ＫＦモデルそれぞれの状態ベクトルの今回の計算における初期値「Ｘ0j：Ｘ01，Ｘ02，Ｘ03」と、誤差共分散行列の今回の計算における初期値「Ｐ0j：Ｐ01，Ｐ02，Ｐ03」とを算出する。そして、算出した初期値を、対応するＫＦモデルにそれぞれ出力する。
【００８８】
各ＫＦモデルは、ミキサから入力した対応する状態ベクトルの初期値「Ｘ0j」及び誤差共分散行列の初期値「Ｐ0j」と、メジャメント取得演算部３２から取得したメジャメント実測値である観測ベクトル「Ｚj：Ｚ1，Ｚ2，Ｚ3」とを用いて、公知のカルマンフィルタと同様、予測演算と補正演算とを行うことで、状態ベクトルの今回の計算値「Ｘj」及び誤差共分散行列の今回の計算値「Ｐj」を算出して、モデル確率更新部及びミキサに出力する。
【００８９】
また、各ＫＦモデルは、尤度「λj：λ1，λ2，λ3」と重み係数「βj：β1，β2，β3」と呼ばれる値を算出して、モデル確率更新部に出力する。尤度「λ」は、尤度関数と呼ばれる関数を用いて算出される観測ベクトル「Ｚ」の尤もらしさを示す指標値であり、重み係数「β」は、尤度関数の係数部分の値である。
【００９０】
モデル確率更新部は、ミキサから入力した規格化ベクトル「ＣＮj：Ｃ1，Ｃ2，Ｃ3」と、各ＫＦモデルから入力した尤度「λ」及び重み係数「β」とを用いて、モデル確率「μj」を新たに算出・更新する。そして、各ＫＦモデルから入力した状態ベクトルの計算値「Ｘj」及び誤差共分散行列の計算値「Ｐj」を、算出したモデル確率「μj」で重み付けして合成することで、状態ベクトルの出力値「Ｘ」及び誤差共分散行列の出力値「Ｐ」を算出する。
【００９１】
定点ＫＦモデルに対応するモデル確率「μ1」が「１」に近い値であるほど、携帯型電話機１は停止していると判断することができる。同様に、等速度ＫＦモデルに対応するモデル確率「μ2」が「１」に近い値であるほど、携帯型電話機１は等速度で移動していると判断することができ、定加速度ＫＦモデルに対応するモデル確率「μ3」が「１」に近い値であるほど、携帯型電話機１は定加速度で移動していると判断することができる。
【００９２】
２−２．処理の流れ
図１０及び図１１は、測位演算部３３によりＲＯＭ３５に格納されている第２のベースバンド処理プログラムが読み出されて実行されることで、携帯型電話機１において実行される第２のベースバンド処理の流れを示すフローチャートである。
【００９３】
先ず、測位演算部３３は、初期設定を行う（ステップＤ１）。具体的には、ＩＭＭ演算処理に使用するパラメータを初期化するとともに、第２のＫＦパラメータを初期化する。また、測位演算部３３は、フラグをＯＦＦに設定する。そして、測位演算部３３は、ＲＯＭ３５に格納されているＩＭＭ演算プログラムを読み出して実行することで、ＩＭＭ演算処理を行う（ステップＤ３）。
【００９４】
図１２及び図１３は、ＩＭＭ演算処理の流れを示すフローチャートである。
先ず、測位演算部３３は、モデル間遷移確率行列「ｐ」を取得する（ステップＥ１）。モデル間遷移確率行列「ｐ」は、次式（１９）に示すような３×３の行列で与えられる。
【数１９】
0005332333.tif 000020
【００９５】
行列の成分「ｐnm」は、ｎ番目のＫＦモデルからｍ番目のＫＦモデルへの遷移の確率を示している。例えば、行列の成分「ｐ11」は、定点ＫＦモデルから定点ＫＦモデル（自身）への遷移の確率を示しており、行列の成分「ｐ12」は、定点ＫＦモデルから等加速度ＫＦモデルへの遷移の確率を示している。また、各行「ｉ」の成分を合算した値は「１」である。すなわち、「ｐi1＋ｐi2＋・・・＋ｐin＝１」である。
【００９６】
次いで、測位演算部３３は、次式（２０）に従って規格化ベクトル「ＣＮ」を算出する（ステップＥ３）。
【数２０】
0005332333.tif 000021
式（２０）からわかるように、規格化ベクトル「ＣＮ」は、モデル間遷移確率行列「ｐ」の転置行列と、モデル確率「μ」の各成分との積で表される。
【００９７】
その後、測位演算部３３は、次式（２１）に従って、合成確率行列「γ」を算出する（ステップＥ５）。
【数２１】
0005332333.tif 000022
式（２１）からわかるように、合成確率行列「γ」は、モデル間遷移確率行列「ｐ」の各成分と、モデル確率「μ」の各成分と、規格化ベクトル「ＣＮ」の各成分とを用いて算出される。
【００９８】
その後、測位演算部３３は、次式（２２）及び（２３）に従って、各ＫＦ測位処理それぞれにおける状態ベクトルの初期値「Ｘ0j」及び誤差共分散行列の初期値「Ｐ0j」を算出する（ステップＥ７）。
【数２２】
0005332333.tif 000023
【数２３】
0005332333.tif 000024
但し、各式の添え字の「ｊ」は、ｊ番目のＫＦモデルに対応する変数であることを示している。以下の式についても同様である。
【００９９】
次いで、測位演算部３３は、各ＫＦモデルそれぞれについて、ループＡの処理を実行する（ステップＥ９〜Ｅ２３）。ループＡでは、測位演算部３３は、状態ベクトル「Ｘ」及び誤差共分散行列「Ｐ」について、式（２）及び（３）に従って予測演算を行って、状態ベクトルの予測値「Ｘ−」及び誤差共分散行列の予測値「Ｐ−」を算出する（ステップＥ１１）。
【０１００】
ＩＭＭ演算処理では、ＥＣＥＦ座標系における携帯型電話機１の位置ベクトル「（ｘ，ｙ，ｚ）」、移動速度ベクトル「（ｕ，ｖ，ｗ）」及び加速度ベクトル「（ａx，ａy，ａz）」と、クロックバイアス「ｂ」と、クロックドリフト「ｄ」とを成分とする、次式（２４）に示すような１１×１の行列で表される状態ベクトル「Ｘ」を用いて、予測演算及び補正演算を行う。
【数２４】
0005332333.tif 000025
【０１０１】
また、測位演算部３３は、定点ＫＦモデル用の状態遷移行列として次式（２５）で与えられる「φ1」、等速度ＫＦモデル用の状態遷移行列として次式（２６）で与えられる「φ2」、定加速度ＫＦモデル用の状態遷移行列として次式（２７）で与えられる「φ3」を用いて予測演算を行う。状態遷移行列は、１１×１１の行列であり、その行と列の並びは、式（２２）の状態ベクトル「Ｘ」の成分の並びに対応している。
【０１０２】
【数２５】
0005332333.tif 000026
【数２６】
0005332333.tif 000027
【数２７】
0005332333.tif 000028
【０１０３】
式（２５）の状態遷移行列「φ1」では、ＥＣＥＦ座標系における位置ベクトル「（ｘ，ｙ，ｚ）」に対応する３×３の行列部分の対角成分は「１」になっているが、移動速度ベクトル「（ｕ，ｖ，ｗ）」及び加速度ベクトル「（ａx，ａy，ａz）」に対応する６×６の行列部分の成分は全て「０」になっており、直感的に、携帯型電話機１が停止状態にあることを表していることがわかる。
【０１０４】
また、式（２６）の状態遷移行列「φ2」では、位置ベクトル「（ｘ，ｙ，ｚ）」及び移動速度ベクトル「（ｕ，ｖ，ｗ）」に対応する６×６の行列部分の対角成分は「１」になっているが、加速度ベクトル「（ａx，ａy，ａz）」に対応する３×３の行列部分の成分は全て「０」になっており、直感的に、携帯型電話機１が等速移動状態にあることを表していることがわかる。
【０１０５】
また、式（２７）の状態遷移行列「φ3」では、位置ベクトル「（ｘ，ｙ，ｚ）」、移動速度ベクトル「（ｕ，ｖ，ｗ）」及び加速度ベクトル「（ａx，ａy，ａz）」に対応する９×９の行列部分の対角成分が「１」となっており、直感的に、携帯型電話機１が定加速度状態にあることを表していることがわかる。
【０１０６】
次いで、測位演算部３３は、メジャメント取得演算部３２からメジャメント実測値を取得して、当該ＫＦモデル用の観測ベクトル「Ｚ」とする（ステップＥ１３）。また、測位演算部３３は、ステップＥ１１で算出した状態ベクトルの予測値「Ｘ−」に、所定の観測行列「Ｈ」を乗算することで、メジャメント予測値「ＨＸ−」を算出する（ステップＥ１５）。
【０１０７】
その後、測位演算部３３は、補正演算を行って、ステップＥ１１で算出した状態ベクトルの予測値「Ｘ−」及び誤差共分散行列の予測値「Ｐ−」を補正して、状態ベクトルの補正値「Ｘ＋」及び誤差共分散行列の補正値「Ｐ＋」を算出する（ステップＥ１７）。補正演算は、式（５）〜（７）に従って行うことができる。
【０１０８】
次いで、測位演算部３３は、次式（２８）に従って、尤度「λ」を算出する（ステップＥ１９）。また、測位演算部３３は、次式（２９）に従って、重み係数「β」を算出する（ステップＥ２１）。
【数２８】
0005332333.tif 000029
【数２９】
0005332333.tif 000030
但し、「Ｎ」はメジャメント取得演算部３２から取得したメジャメント実測値の個数を示している。
【０１０９】
全てのＫＦモデルについてステップＥ１１〜Ｅ２１の処理を行った後、測位演算部３３は、ループＡを終了する（ステップＥ２３）。ループＡを終了した後、測位演算部３３は、次式（３０）に従って、規格化定数「Ｃ」を算出する（ステップＥ２５）。
【数３０】
0005332333.tif 000031
【０１１０】
規格化定数「Ｃ」は、モデル確率「μ」が［０，１］の範囲の値となるように規格化（正規化）するための定数であり、尤度「λ」の各成分と、規格化ベクトル「ＣＮ」の各成分とに基づいて算出される。
【０１１１】
そして、測位演算部３３は、次式（３１）に従って、各ＫＦモデルそれぞれについてモデル確率「μ」を算出する（ステップＥ２７）。
【数３１】
0005332333.tif 000032
【０１１２】
その後、測位演算部３３は、ステップＥ２７で算出したモデル確率「μ」を用いて、次式（３２）及び（３３）に従って、状態ベクトルの出力値「Ｘ」及び誤差共分散行列の出力値「Ｐ」を決定する（ステップＥ２９）。そして、測位演算部３３は、ＩＭＭ演算処理を終了する。
【数３２】
0005332333.tif 000033
【数３３】
0005332333.tif 000034
【０１１３】
図１０の第２のベースバンド処理に戻って、測位演算部３３は、ＩＭＭ演算処理で算出した状態ベクトルの出力値「Ｘ」に含まれるＥＣＥＦ座標系における位置ベクトル「（ｘ，ｙ，ｚ）」に対して所定の座標変換演算を行って、ＥＮＵ座標系における東方向の位置「ＥａｓｔＰｏｓ」、北方向の位置「ＮｏｒｔｈＰｏｓ」及び天頂方向の位置「ＵｐＰｏｓ」を算出し、現在の測位時刻と対応付けてＲＡＭ３７の計測履歴データ３７７に記憶させる（ステップＤ５）。
【０１１４】
同様に、測位演算部３３は、状態ベクトルの出力値「Ｘ」に含まれるＥＣＥＦ座標系における移動速度ベクトル「（ｕ，ｖ，ｗ）」に対して所定の座標変換演算を行って、ＥＮＵ座標系における東方向の移動速度「ＥａｓｔＶｅｌ」、北方向の移動速度「ＮｏｒｔｈＶｅｌ」及び天頂方向の移動速度「ＵｐＶｅｌ」を算出し、現在の測位時刻と対応付けてＲＡＭ３７の計測履歴データ３７７に記憶させる（ステップＤ７）。
【０１１５】
次いで、測位演算部３３は、ステップＤ７で算出した東方向の移動速度「ＥａｓｔＶｅｌ」及び北方向の移動速度「ＮｏｒｔｈＶｅｌ」を用いて、式（８）及び（９）に従って、測位平面上の携帯型電話機１の移動速度「Ｓｐｅｅｄ」及び方位「Ｈｅａｄｉｎｇ」を算出し、現在の測位時刻と対応付けてＲＡＭ３７の計測履歴データ３７７に記憶させる（ステップＤ９）。
【０１１６】
その後、測位演算部３３は、運動モード判定処理を行う（ステップＤ１１）。本実施形態では、携帯型電話機１の運動モードとして、携帯型電話機１が停止しているか、ほぼ停止していることを示す「スタティックモード」と、携帯型電話機１がある程度の速度で移動していることを示す「ダイナミックモード」との２種類の運動モードが予め定められている。
【０１１７】
運動モード判定処理では、ＩＭＭ演算処理で求めたモデル確率「μ」の値に基づいて、携帯型電話機１の運動モードを判定する。例えば、定点ＫＦモデルに対応するモデル確率「μ1」が「０．８以上」である場合は（μ1≧０．８）、携帯型電話機１は完全に停止しているか、ほぼ停止しているものと判断し、運動モードを「スタティックモード」と判定する。また、それ以外の場合は、運動モードを「ダイナミックモード」と判定する。
【０１１８】
次いで、測位演算部３３は、運動モードがダイナミックモードからスタティックモードに変化したか否かを判定し（ステップＤ１３）、変化しなかったと判定した場合は（ステップＤ１３；Ｎｏ）、ステップＤ１７へと処理を移行する。また、運動モードがスタティックモードに変化したと判定した場合は（ステップＤ１３；Ｙｅｓ）、測位演算部３３は、フラグをＯＮに設定する（ステップＤ１５）。
【０１１９】
その後、測位演算部３３は、運動モードがスタティックモードからダイナミックモードに変化したか否かを判定し（ステップＤ１７）、変化しなかったと判定した場合は（ステップＤ１７；Ｎｏ）、ステップＤ２１へと処理を移行する。また、運動モードがダイナミックモードに変化したと判定した場合は（ステップＤ１７；Ｙｅｓ）、測位演算部３３は、フラグをＯＦＦに設定する（ステップＤ１９）。
【０１２０】
次いで、測位演算部３３は、フラグがＯＮに設定されているか否かを判定し（ステップＤ２１）、ＯＦＦに設定されていると判定した場合は（ステップＤ２１；Ｎｏ）、ステップＤ２５へと処理を移行する。また、フラグがＯＮに設定されていると判定した場合は（ステップＤ２１；Ｙｅｓ）、ＲＡＭ３７の計測履歴データ３７７において、１時刻前の測位平面上の方位で、現在の測位時刻の測位平面上の方位を更新する（ステップＤ２３）。
【０１２１】
その後、測位演算部３３は、ＲＯＭ３５に記憶されている第２のＫＦ測位プログラム３５１２を読み出して実行することで、第２のＫＦ測位処理を行う（ステップＤ２５）。第２のＫＦ測位処理は、図８を用いて説明した通りであるため、再度の説明を省略する。
【０１２２】
第２のＫＦ測位処理を行った後、測位演算部３３は、第２のＫＦ測位処理で算出した状態ベクトルの補正値「Ｘ＋2」に含まれる東方向の位置「ＥａｓｔＰｏｓ」、北方向の位置「ＮｏｒｔｈＰｏｓ」及び天頂方向の位置「ＵｐＰｏｓ」で表される位置を出力位置に決定する（ステップＤ２７）。そして、測位演算部３３は、決定した出力位置をホストＣＰＵ５０に出力する（ステップＤ２９）。
【０１２３】
その後、測位演算部３３は、操作部６０を介してユーザにより測位終了指示がなされたか否かを判定し（ステップＤ３１）、なされなかったと判定した場合は（ステップＤ３１；Ｎｏ）、ステップＤ３に戻る。また、測位終了指示がなされたと判定した場合は（ステップＤ３１；Ｙｅｓ）、第２のベースバンド処理を終了する。
【０１２４】
２−３．作用効果
第２実施形態によれば、ＩＭＭ演算処理により求めたＫＦモデルのモデル確率に基づいて、携帯型電話機１の運動モードを判定する。そして、運動モードがダイナミックモードからスタティックモードに変化したことを検出した場合に、当該検出直前の携帯型電話機１の移動速度を保持する。そして、ＩＭＭ演算処理により求めた携帯型電話機１の位置、移動速度及び方位を観測情報とする第２のＫＦ測位処理を行って測位するが、この際、保持されている方位を観測情報として用いて処理を行う。これにより、第１実施形態と同様に、低速移動時や停止時における方位のばらつきを防止し、測位位置の直進性を向上させることが可能となる。
【０１２５】
３．第３実施形態
３−１．データ構成
第３実施形態は、ベースバンド処理回路部３０のＲＯＭ３５に、第３のベースバンド処理（図１４参照）として実行される第３のベースバンド処理プログラムが格納された実施形態である。また、第３のベースバンド処理プログラムには、ＬＳ（Least Squared）測位処理（図１５参照）として実行されるＬＳ測位プログラムと、第２のＫＦ測位処理（図８参照）として実行される第２のＫＦ測位プログラム３５１２とがサブルーチンとして含まれている。
【０１２６】
３−２．処理の流れ
図１４は、測位演算部３３によりＲＯＭ３５に格納されている第３のベースバンド処理プログラムが読み出されて実行されることで、携帯型電話機１において実行される第３のベースバンド処理の流れを示すフローチャートである。尚、図６の第１のベースバンド処理と同一のステップについては同一の符号を付して説明を省略し、第１のベースバンド処理とは異なる部分を中心に説明する。
【０１２７】
先ず、測位演算部３３は、ＬＳ測位処理に使用するパラメータの初期設定を行う（ステップＦ１）。その後、測位演算部３３は、ＲＯＭ３５に記憶されているＬＳ測位プログラムを読み出して実行することで、ＬＳ測位処理を行う（ステップＦ３）。
【０１２８】
図１５は、ＬＳ測位処理の流れを示すフローチャートである。
先ず、測位演算部３３は、メジャメント取得演算部３２からメジャメント実測値を取得し（ステップＧ１）、取得したメジャメント実測値に含まれるコード位相を用いて、携帯型電話機１とＧＰＳ衛星間の擬似距離を算出する（ステップＧ３）。そして、測位演算部３３は、算出した擬似距離を用いて最小二乗法による測位演算を行って、ＥＣＥＦ座標系における携帯型電話機１の位置ベクトル「（ｘ，ｙ，ｚ）」を算出する（ステップＧ５）。
【０１２９】
その後、測位演算部３３は、ステップＧ１で取得したメジャメント実測値に含まれるＧＰＳ衛星信号の受信周波数を用いて、単位時間当たりの受信周波数の変化量を算出する（ステップＧ７）。そして、測位演算部３３は、算出した受信周波数の変化量を用いて、ＥＣＥＦ座標系における携帯型電話機１の移動速度ベクトル「（ｕ，ｖ，ｗ）」を算出して（ステップＧ９）、ＬＳ測位処理を終了する。
【０１３０】
図１４の第３のベースバンド処理に戻って、ＬＳ測位処理を行った後、測位演算部３３は、ステップＧ５で算出したＥＣＥＦ座標系における位置ベクトル「（ｘ，ｙ，ｚ）」に対して所定の座標変換演算を行って、ＥＮＵ座標系における東方向の位置「ＥａｓｔＰｏｓ」、北方向の位置「ＮｏｒｔｈＰｏｓ」及び天頂方向の位置「ＵｐＰｏｓ」を算出し、現在の測位時刻と対応付けてＲＡＭ３７の計測履歴データ３７７に記憶させる（ステップＦ７）。
【０１３１】
同様に、測位演算部３３は、ステップＧ９で算出したＥＣＥＦ座標系における移動速度ベクトル「（ｕ，ｖ，ｗ）」に対して所定の座標変換演算を行って、ＥＮＵ座標系における東方向の移動速度「ＥａｓｔＶｅｌ」、北方向の移動速度「ＮｏｒｔｈＶｅｌ」及び天頂方向の移動速度「ＵｐＶｅｌ」を算出し、現在の測位時刻と対応付けてＲＡＭ３７の計測履歴データ３７７に記憶させる（ステップＦ９）。そして、測位演算部３３は、ステップＡ１１へと処理を移行する。
【０１３２】
３−３．作用効果
第３実施形態によれば、ＬＳ測位処理により求めた携帯型電話機１の移動速度が所定の閾値速度未満であることを検出した場合に、当該検出直前の携帯型電話機１の移動速度を保持する。そして、ＬＳ測位処理により求めた携帯型電話機１の位置、移動速度及び方位を観測情報とする第２のＫＦ測位処理を行って測位するが、この際、保持されている方位を観測情報としてＫＦ処理を行う。この場合は、第１実施形態や第２実施形態とは違ってＫＦ処理が１段で済むため、演算量を削減することができる。
【０１３３】
４．実験結果
図１６は、従来の手法で処理を行った場合の各測位時刻における携帯型電話機１の測位平面上の方位と、本願実施形態の手法で処理を行った場合の各測位時刻における携帯型電話機１の測位平面上の方位とをそれぞれプロットしたグラフである。図１６において、横軸は測位時刻、縦軸は方位をそれぞれ示しており、同一の移動経路を同一の速度で移動した場合の実験結果を示している。
【０１３４】
この結果を見ると、従来の手法では、測位時刻の変化に伴って方位に大きなばらつきが生じていることがわかる。一方、本願実施形態の手法では、携帯型電話機１が停止しているか、低速移動中であると判定した場合は、その検出直前の方位を保持するようにしているため、方位のばらつきが小さくなっていることがわかる。
【０１３５】
５．変形例
５−１．電子機器
本発明は、測位装置を備えた電子機器であれば何れの電子機器にも適用可能である。例えば、ノート型パソコンやＰＤＡ（Personal Digital Assistant）、カーナビゲーション装置等についても同様に適用可能である。
【０１３６】
５−２．衛星測位システム
上述した実施形態では、衛星測位システムとしてＧＰＳを例に挙げて説明したが、ＷＡＡＳ（Wide Area Augmentation System）、ＱＺＳＳ（Quasi Zenith Satellite System）、ＧＬＯＮＡＳＳ（GLObal NAvigation Satellite System）、ＧＡＬＩＬＥＯ等の他の衛星測位システムであってもよい。
【０１３７】
５−３．処理の分化
測位演算部３３が実行する処理の一部又は全部を、ホストＣＰＵ５０が実行することにしてもよい。例えば、メジャメント取得演算部３２から取得したメジャメント実測値を用いて、測位演算部３３が第１のＫＦ測位処理やＩＭＭ演算処理、ＬＳ測位処理を行って、観測情報を求める。そして、ホストＣＰＵ５０は、測位演算部３３により求められた観測情報を用いて第２のＫＦ測位処理を行って、出力位置を決定する。また、第１のＫＦ測位処理やＩＭＭ演算処理、ＬＳ測位処理も含めて、ホストＣＰＵ５０が全ての処理を行うこととしてもよい。
【０１３８】
５−４．方位の保持
上述した実施形態では、携帯型電話機１の移動速度が所定の閾値速度未満となったことを検出した場合や、携帯型電話機１の運動モードがダイナミックモードからスタティックモードに変化したことを検出した場合に、当該検出直前（１時刻前）の方位の情報を、検出がなされなくなるまでの間保持するものとして説明したが、次のようにしてもよい。すなわち、当該検出直前の方位の情報ではなく、当該検出時の方位の情報を、検出がなされなくなるまでの間保持するようにする。
【０１３９】
５−５．観測情報の取得
上述した実施形態では、第１のＫＦ測位処理やＩＭＭ演算処理、ＬＳ測位処理を行って第２のＫＦ測位処理の観測情報とする携帯型電話機１の位置、移動速度及び方位の情報を演算するものとして説明したが、これらの情報を演算することができれば、他の処理としてもよい。
【０１４０】
例えば、速度センサや方位センサ等の慣性航法用センサを携帯型電話機１に内蔵しておき、慣性航法用センサの検出結果を用いて観測情報を取得する。この場合は、速度センサにより検出された移動速度と、方位センサにより検出された方位とを用いて、公知の慣性航法演算処理を行って携帯型電話機１の現在位置を求める。そして、慣性航法演算処理により求めた位置と、速度センサにより検出された移動速度と、方位センサにより検出された方位とを観測情報として、第２のＫＦ測位処理を行う。
【０１４１】
また、携帯型電話機１の移動速度が所定の閾値速度未満となったことを検出した場合や、携帯型電話機１の運動モードがダイナミックモードからスタティックモードに変化したことを検出した場合には、当該検出直前又は当該検出時に方位センサにより検出された方位を保持し、第２のＫＦ測位処理では、この保持されている方位を観測情報として使用する。
【図面の簡単な説明】
【０１４２】
【図１】携帯型電話機の機能構成を示すブロック図。
【図２】ベースバンド処理回路部のＲＯＭに格納されたデータの一例を示す図。
【図３】ベースバンド処理回路部のＲＡＭに格納されるデータの一例を示す図。
【図４】捕捉衛星別メジャメントデータのデータ構成の一例を示す図。
【図５】計測履歴データのデータ構成の一例を示す図。
【図６】第１のベースバンド処理の流れを示すフローチャート。
【図７】第１のＫＦ測位処理の流れを示すフローチャート。
【図８】第２のＫＦ測位処理の流れを示すフローチャート。
【図９】ＩＭＭ演算処理の概要を説明するための図。
【図１０】第２のベースバンド処理の流れを示すフローチャート。
【図１１】第２のベースバンド処理の流れを示すフローチャート。
【図１２】ＩＭＭ演算処理の流れを示すフローチャート。
【図１３】ＩＭＭ演算処理の流れを示すフローチャート。
【図１４】第３のベースバンド処理の流れを示すフローチャート。
【図１５】ＬＳ測位処理の流れを示すフローチャート。
【図１６】実験結果の一例を示す図。
【符号の説明】
【０１４３】
１  携帯型電話機  、  １０  ＧＰＳアンテナ、  ２０  ＧＰＳ受信部、
２１  ＲＦ受信回路部、  ３０  ベースバンド処理回路部、  ３１  演算制御部、
３２  メジャメント取得演算部、  ３３  測位演算部、  ３５  ＲＯＭ、
３７  ＲＡＭ、  ４０  ＴＣＸＯ、  ５０  ホストＣＰＵ、  ６０  操作部、
７０  表示部、  ８０  携帯電話用アンテナ、  ９０  携帯電話用無線通信回路部、
１００  ＲＯＭ、  １１０  ＲＡＭ
【図１】
0005332333.tif 000035
【図２】
0005332333.tif 000036
【図３】
0005332333.tif 000037
【図４】
0005332333.tif 000038
【図５】
0005332333.tif 000039
【図６】
0005332333.tif 000040
【図７】
0005332333.tif 000041
【図８】
0005332333.tif 000042
【図９】
0005332333.tif 000043
【図１０】
0005332333.tif 000044
【図１１】
0005332333.tif 000045
【図１２】
0005332333.tif 000046
【図１３】
0005332333.tif 000047
【図１４】
0005332333.tif 000048
【図１５】
0005332333.tif 000049
【図１６】
0005332333.tif 000050