(58)【調査した分野】(Int.Cl.,DB名)
前記フォーマットに従って定められている送信周期内で前記上限値以下の前記第1不一致数が得られ、且つ前記第1出現確率を前記第2出現確率で除した値が前記第1基準値以下ではない場合、前記送信周期ごとに、前記第1出現確率に対応する第1受信符号列と、当該第1出現確率に対して前記第1基準値を満たさない出現確率に対応する第2受信符号列のうち少なくとも前記第2出現確率に対応するものと、を含む一部の期間で前記電波受信手段に受信を行わせる受信制御手段を備え、
前記合致検出手段は、当該一部の期間内の受信符号列のうち少なくとも前記第1受信符号列及び前記第2受信符号列と前記想定符号列とを照合して、前記所定の基準条件を満たす受信符号列を検出する
ことを特徴とする請求項1又は4記載の電波時計。
前記受信制御手段は、受信符号列の前記先頭位置が前記第1不一致数の得られた位置から前記所定の比較幅の中でずらされた場合における各不一致数のうち2番目に小さい第3不一致数に係る第3出現確率が所定の第2基準値より大きい場合に、前記電波受信手段により前記第1出現確率に対応する受信符号列と前記第2出現確率に対応する受信符号列とを含む一部の期間での受信を行わせることを特徴とする請求項5記載の電波時計。
前記不一致数の上限は、前記想定符号列に対して当該上限の不一致数となる符号の配列が前記受信符号列として出現する確率が予め定められた第3基準値以下となるように定められることを特徴とする請求項8記載の電波時計。
前記合致検出手段は、前記想定符号列と前記受信符号列との間で照合された各符号中で、前記少なくとも所定数の符号に不一致があった場合には、当該受信符号列と前記想定符号列との合致度が前記所定の基準条件を満たさないと判断することを特徴とする請求項2記載の電波時計。
前記想定符号列生成手段は、前記想定符号列の先頭の符号位置に対する前記受信符号列の先頭の符号位置を前記送信周期に応じた符号数以上のずれ幅の範囲でずらして求められた前記合致度が、何れも前記所定の基準条件を満たさなかった場合に、前記時刻対応情報の変化に応じて前記想定符号列を更新することを特徴とする請求項2又は11記載の電波時計。
前記想定符号列生成手段は、前記フォーマットに従って定められている送信周期ごとに送信される固定符号列を含めて前記想定符号列を生成することを特徴とする請求項1〜12の何れか一項に記載の電波時計。
前記想定符号列には、前記受信符号列の符号と一致しない場合に、前記合致検出手段が前記所定の基準条件を満たさないと判断する符号が含まれることを特徴とする請求項1〜15の何れか一項に記載の電波時計。
前記想定符号列生成手段は、TOW−CountとサブフレームIDとが前記所定の対応関係に従って前記受信符号列と不一致になった場合には、当該所定の対応関係に従って前記想定符号列を更新することを特徴とする請求項17記載の電波時計。
【発明を実施するための形態】
【0011】
以下、本発明の実施の形態を図面に基づいて説明する。
図1は、本発明の測位装置及び電波時計の実施形態である電子時計1の機能構成を示すブロック図である。
【0012】
この電子時計1は、少なくとも米国のGPS(Global Positioning System)に係る測位衛星(以下、GPS衛星と記す)からの電波(衛星電波)を受信して日時情報を取得することが可能な電波時計である。
電子時計1は、ホストCPU41(Central Processing Unit)と、ROM42(Read Only Memory)と、RAM43(Random Access Memory)と、発振回路44と、分周回路45と、計時手段としての計時回路46と、表示部47と、表示ドライバ48と、操作部49と、電源部50と、衛星電波受信処理部60と、アンテナANなどを備える。
【0013】
ホストCPU41は、各種演算処理を行い、電子時計1の全体動作を統括制御する。ホストCPU41は、ROM42から制御プログラムを読み出し、RAM43にロードして日時の表示や各種機能に係る演算制御や表示などの各種動作処理を行う。また、ホストCPU41は、衛星電波受信処理部60を動作させて測位衛星からの電波を受信させ、受信内容に基づいて求められた日時情報や位置情報を取得する。
【0014】
ROM42は、マスクROMや書き換え可能な不揮発性メモリなどであり、制御プログラムや初期設定データが記憶されている。制御プログラムの中には、測位衛星から各種情報を取得するための各種処理の制御に係るプログラム421が含まれる。
【0015】
RAM43は、SRAMやDRAMなどの揮発性のメモリであり、ホストCPU41に作業用のメモリ空間を提供して一時データを記憶すると共に、各種設定データを記憶する。各種設定データには、電子時計1のホーム都市設定や、日時の計数、表示における夏時間の適用可否に係る設定が含まれる。RAM43に記憶される各種設定データの一部又は全部は、不揮発性メモリに記憶されても良い。
【0016】
発振回路44は、予め定められた所定の周波数信号を生成して出力する。この発振回路44には、例えば、水晶発振器が用いられている。
【0017】
分周回路45は、発振回路44から入力された周波数信号を計時回路46やホストCPU41が利用する周波数の信号に分周して出力する。この出力信号の周波数は、ホストCPU41による設定に基づいて変更することが可能であっても良い。
【0018】
計時回路46は、分周回路45から入力された所定の周波数信号(クロック信号)の入力回数を計数して初期値に加算することで現在の日時を計数する。計時回路46としては、ソフトウェア的にRAMに記憶させる値を変化させるものであっても良いし、或いは、専用のカウンタ回路を備えていても良い。計時回路46の計数する日時は、特には限られないが、所定のタイミングからの累積時間、UTC日時(協定世界時)、又は予め設定されたホーム都市の日時(地方時)などのうち何れかである。また、この計時回路46の計数する日時自体は、必ずしも年月日、時分秒の形式で保持される必要がない。分周回路45から計時回路46に入力されるクロック信号には、正確な時間経過とは若干のずれがあり、1日当たりのずれの大きさ(歩度)は、動作環境、例えば、温度によって変化し、通常では、±0.5秒以内である。
【0019】
表示部47は、例えば、液晶ディスプレイ(LCD)や有機EL(Electro-Luminescent)ディスプレイなどの表示画面を備え、ドットマトリクス方式及びセグメント方式の何れか又はこれらの組み合わせにより日時や各種機能に係るデジタル表示動作を行う。
表示ドライバ48は、表示画面の種別に応じた駆動信号をホストCPU41からの制御信号に基づいて表示部47に出力して、表示画面上に表示を行わせる。
【0020】
操作部49は、ユーザからの入力操作を受け付けて、当該入力操作に応じた電気信号を入力信号としてホストCPU41に出力する。この操作部49には、例えば、押しボタンスイッチやりゅうずスイッチが含まれる。
或いは、表示部47の表示画面に重ねてタッチセンサが設けられ、当該タッチセンサへのユーザの接触動作に係る接触位置や接触態様の検出に応じた操作信号を出力するタッチパネルとして表示画面を機能させることで、表示部47と操作部49とが一体的に設けられても良い。
【0021】
電源部50は、バッテリを備え、電子時計1の動作に係る電力を所定の電圧で各部に供給する。電源部50のバッテリとしては、ここでは、ソーラパネルと二次電池が用いられている。ソーラパネルは、入射した光により起電力を生じてホストCPU41などの各部に電力供給を行うと共に、余剰電力が生じた場合には、当該電力を二次電池に蓄電する。一方、ソーラパネルへの外部からの入射光量により発電可能な電力が消費電力に対して不足している場合には、二次電池から電力が供給される。或いは、バッテリとしてボタン型などの一次電池が用いられても良い。
【0022】
衛星電波受信処理部60は、アンテナANを介して測位衛星からの電波に同調して各測位衛星に固有のC/Aコード(疑似ランダムノイズ)を同定、捕捉することで当該電波を受信し、測位衛星が送信する航法メッセージを復調、復号して必要な情報を取得する。衛星電波受信処理部60は、モジュールCPU61(想定符号列生成手段、合致検出手段、日時取得手段)と、メモリ62と、記憶部63と、RF部64と、ベースバンド変換部65と、捕捉追尾部66などを備える。
【0023】
モジュールCPU61は、ホストCPU41からの制御信号や設定データの入力に応じて衛星電波受信処理部60の動作を制御する。モジュールCPU61は、記憶部63から必要なプログラムや設定データを読み出して、RF部64、ベースバンド変換部65及び捕捉追尾部66を動作させ、受信された各測位衛星からの電波を受信、復調させて日時情報を取得する。このモジュールCPU61は、受信した電波を復号して日時情報を取得する他、復号せずに、復調、同定された受信符号列を予め設定された比較照合用の符号列(照合符号列)と比較して一致検出を行うことが出来る。
【0024】
メモリ62は、衛星電波受信処理部60におけるモジュールCPU61に作業用のメモリ空間を提供するRAMである。また、メモリ62には、受信された符号列との比較照合用に生成された符号列データが一時記憶される。
【0025】
記憶部63は、GPS測位に係る各種設定データや測位の履歴を記憶する。記憶部63には、フラッシュメモリやEEPROM(Electrically Erasable and Programmable Read Only Memory)などの各種不揮発性メモリが用いられる。記憶部63に記憶されるデータには、各測位衛星の軌道情報(エフェメリス)、予測軌道情報(アルマナック)や前回の測位日時及び位置が含まれる。また、記憶部63には、世界各地のタイムゾーンや夏時間の実施情報に係るデータが時差テーブルとして記憶されている。測位が行われた場合には、この時差テーブルが参照されて、得られた現在位置における標準時間での協定世界時(UTC)からの時差や夏時間実施情報などの地方時情報が特定される。
また、記憶部63に記憶されるデータには、プログラム631と、履歴記憶手段としての履歴記憶部632と、符号列記憶手段としての符号記憶部633が含まれ、日時情報の取得や測位が行われる場合には、このプログラム631がモジュールCPU61により読み出されて実行される。また、このプログラム631が実行される際に、直近の受信履歴を記憶する履歴記憶部632、及び当該直近の受信時における同定符号列(履歴符号列)データを記憶する符号記憶部633が参照されて利用される。
【0026】
RF部64は、L1帯(GPS衛星では、1.57542GHz)の衛星電波を受信して測位衛星からの信号を選択的に通過、増幅させ、中間周波数信号に変換する。RF部64には、LNA(低雑音増幅器)、BPF(帯域通過フィルタ)、局部発振器やミキサなどが含まれる。
【0027】
ベースバンド変換部65は、RF部64で得られた中間周波数信号に対して各測位衛星のC/Aコードを適用してベースバンド信号、即ち、航法メッセージ(所定のフォーマット)に係る符号列(受信符号列)を取得する。
捕捉追尾部66は、RF部64で得られた中間周波数信号に対して各測位衛星の各位相でのC/Aコードとの間で各々相関値を算出してそのピークを特定することで、受信されている測位衛星からの信号とその位相を同定する。また、捕捉追尾部66は、同定された測位衛星のC/Aコードとその位相により当該測位衛星からの航法メッセージに係る符号列を継続的に取得するために、ベースバンド変換部65に対して位相情報のフィードバックなどを行う。
これらRF部64、ベースバンド変換部65及び捕捉追尾部66により電波受信手段が構成される。
【0028】
この衛星電波受信処理部60は、電源部50から直接電力が供給され、そのオンオフがホストCPU41の制御信号により切り替えられる。即ち、衛星電波受信処理部60は、測位衛星からの電波受信及び日時取得や測位に係る算出動作が行われている期間以外には、常時動作しているホストCPU41などとは別個に電源がオフされる。また、本実施形態の衛星電波受信処理部60では、操作部49への入力操作に基づいて、航空機の飛行期間中における電波利用を制限するための機内モードへの切替が可能になっており、当該機内モード中には、ホストCPU41により衛星電波受信処理部60の電源オンが禁止される。或いは、機内モード中には、衛星電波受信処理部60における電波受信動作のみが禁止されても良い。
【0029】
次に、GPS衛星から送信される航法メッセージのフォーマットについて説明する。
GNSSでは、複数の測位衛星を複数の軌道上に分散配置させて地上の各地点から同時に複数の異なる測位衛星の送信電波を受信可能とされ、当該受信可能な測位衛星から送信されている当該測位衛星の現在位置に係る情報や日時情報を4機以上の測位衛星(地表面であるとの仮定の上では3機)から取得することで、これらの取得データと、取得タイミングのずれ、即ち、各測位衛星からの伝播時間(距離)の差と、に基づいて三次元空間における位置座標及び日時を決定することが出来る。
【0030】
測位衛星からは、日時に係る情報と、衛星の位置に係る情報と、衛星の健康状態などのステータス情報などが所定のフォーマットで符号化され、符号列がC/Aコード(疑似ランダムノイズ)によりスペクトラム拡散されて送信されている。これらの送信フォーマット(航法メッセージのフォーマット)は、測位システムごとに定められている。
【0031】
図2は、GPS衛星から送信されている航法メッセージのフォーマットを説明する図である。
GPSでは、各GPS衛星からそれぞれ30秒単位のフレームデータが合計25ページ送信されることで、12.5分周期で全てのデータが出力されている。GPSでは、GPS衛星ごとに固有のC/Aコードが用いられており、このC/Aコードは、1.023MHzで1023個の符号(チップ)が配列されて1ms周期で送信されている。このチップの先頭は、GPS衛星の内部時計と同期しているので、GPS衛星ごとにこの位相のずれを検出することで、伝播時間が検出される。
【0032】
各フレームデータは、5つのサブフレーム(6秒)で構成されており、サブフレームごとに6秒周期(送信周期)で当該6秒単位の日時情報と、送信周期によらず一定の固定符号列とが送信されている。各サブフレームは10個のワード(各0.6秒、順番にWORD1〜WORD10)によって構成されている。WORD1とWORD2のデータフォーマットは、全てのサブフレームで同一である。WORD1は、8ビットの固定符号列であるプリアンブル(Preamble)に続き、14ビットのテレメトリメッセージ(TLM Message)が含まれ、その後ろに1ビットのIntegrity status flagと1ビットの予備ビットを挟んで6ビットのパリティデータが配される。WORD2には、上述の6秒単位の日時情報である週内経過時間を示す17ビットのTOW−Count(Zカウントともいう)と、これに続くそれぞれ1ビットのアラートフラグ(Alert flag)及びアンチスプーフフラグ(Anti-spoof flag)が含まれている。それから、WORD2では、サブフレームの番号(周期番号)を示すサブフレームID(subframe-ID)が3ビットで示され、パリティデータの整合用2ビットを挟んで6ビットのパリティデータが配列される。サブフレームIDは、TOW−Countと同様に6秒周期で(所定の対応関係に従って)変化する符号列(対応符号列部分)であるので、時刻対応情報としてのこれらサブフレームIDとTOW−Countの整合性を日時の確認に利用することが出来る。
【0033】
WORD3以降のデータは、サブフレームによって異なる。サブフレーム1のWORD3には、先頭に10ビットのWN(週番号)が含まれる。サブフレーム2、3には、主に、エフェメリス(精密軌道情報)が含まれ、サブフレーム4の一部及びサブフレーム5では、アルマナック(予測軌道情報)が送信されている。
【0034】
次に、本実施形態の電子時計1における日時情報の取得動作について説明する。
本実施形態の電子時計1では、計時回路46の計数する日時や直近に取得された符号列などに基づいて、予め受信されると想定される想定符号列を生成する。そして、この符号列と、順次受信されて同定される符号列(受信符号列)とを照合し、合致度が基準条件を満たす部分を単独で検出した場合に、当該検出された受信符号列の受信タイミング(合致タイミング)に応じて当該想定符号列の取得想定日時のタイミングを同定する。この基準条件は、ここでは、照合結果に含まれる符号の不一致数が、想定された受信タイミングとは異なるタイミングで当該不一致数の不一致を伴う符号配列が出現して取得、照合される確率に比して、電子時計1の使用回数、頻度などに応じた十分に低い値となるように定められる。
【0035】
受信符号列は、想定符号列の先頭から末尾までの符号数(ビット数)の符号が同定された後、1ビットの符号が同定されるごとに当該1ビットを最も古い1ビットと入れ換えて先頭位置をずらしたものを定め、逐次想定符号列と照合させることが出来る。照合は、モジュールCPU61で行われるが、捕捉追尾部66のマッチドフィルタといったハードウェア構成を流用して用いても良い。また、予めより長い符号列を同定しておき、当該符号列内で受信符号列の範囲をずらしながら想定符号列との照合を行っても良い。この場合、当該符号列の先頭の受信タイミングを記憶しておき、想定符号列との合致が検出された符号位置に応じて当該受信タイミングをシフトさせて合致タイミングを定めても良い。
【0036】
想定符号列に用いることが可能な符号としては、プリアンブルや予備ビットのように常に固定された符号、TOW−Count、WNやサブフレームIDのように、日時から逆算が可能なもの、アラートフラグやアンチスプーフフラグなどのフラグビットのように、通常では変更されず、変更されている場合にはデータ使用に問題があり得るもの、及びテレメトリメッセージや予測軌道情報(アルマナック)といった最新情報を取得してから短い経過時間では更新が想定されないもの、などを示す各符号の一部又は全部が挙げられる。この場合、想定符号列は、全て連続して送信される符号である必要はなく、想定が困難な符号を飛ばしながら複数箇所に分割されて設定されていても良い。例えば、WORD1の1ビット目からWORD2の22ビット目(サブフレームIDの最下位ビット)までのうち、WORD1の最後の6ビット(パリティ)を除外して想定符号列が生成されても良い。
【0037】
固定符号列やフラグビットは、前回の受信状態や受信間隔などによらずに用いられて良い。
【0038】
計時回路46が上述のように最大で0.5秒/日程度のずれを生じ得るとすると、日時を修正してから6日以内であれば、日時のずれは、サブフレーム1つ分の長さに対応する±3秒以内であると想定される。従って、このような範囲では、計時回路46の日時に基づいて受信されるサブフレームに含まれるTOW−CountやサブフレームIDの符号列を想定することが可能となる。
【0039】
テレメトリメッセージや予測軌道情報などの符号列は、短期間(例えば、1日未満)であれば、通常、変化が生じない。従って、直近の受信の際に同定されたこれらの符号列を符号記憶部633に履歴符号列として記憶させておき、履歴記憶部632に記憶された前回の受信履歴と計時回路46が計数する日時との比較で得られる前回の受信からの経過時間などに応じて情報の種別ごとに利用可能か判断を行い、適宜利用することが出来る。
【0040】
想定符号列は、短いほど短時間で受信が終了し、また、日時情報とは関係のない符号の同定数が減少するが、誤同定、即ち、想定符号列の出現が想定される場所とは異なる場所に同一又は類似の符号列が出現して、想定符号列と合致したと判定され、上述の基準条件が満たされなくなるのを避けるために必要な長さ以上であることが要求される。ここでは、各二値符号が各々1/2の確率でランダムに「0」か「1」となって配列される場合に、想定符号列の各符号と受信符号列の各符号との不一致数に応じた誤同定の確率(出現する確率)が電子時計1に必要な値(第3基準値)以下となるような不一致数の上限(基準不一致数)と想定符号列の長さとが設定される。
【0041】
例えば、44ビット長の想定符号列に対して3ビットの不一致を伴う符号配列の出現率は、
44C
3/2
44=7.53×10
−10である。また、28ビット長の想定符号列に対して1ビットの不一致を伴う符号配列の出現率は、
28C
1/2
28=1.04×10
−7である。
【0042】
図3は、想定符号列と受信符号列との不一致数の推移を模式的に示す図である。
航法メッセージの符号列では、異なる符号間での相関関係は、多くの符号について存在しないので、想定符号列と受信符号列とが異なる位相(符号位置の相対的なずれ)で照合された場合には、通常、半数程度の符号が不一致になると期待される。これに対し、想定符号列と受信符号列とが一致したタイミングで、符号の不一致数Eが「0」又はごく小さい数に急減するので、不一致数Eが基準値Em以下となったタイミングtmを検出することで合致タイミングの候補を取得する。この基準値Emは、上述の不一致を伴う符号配列の出現率に基づいて定められる。例えば、出現率を10
−9以下とするために、上述のように、44ビット長の想定符号列に対して基準値Em=3を設定することが出来る。
また、この出現率を更に製品寿命と衛星電波の見込み受信頻度とに応じて定めて想定符号列のビット長や基準値Emを定めても良い。
【0043】
ここで、TOW−Countが0(TOW−Countの全ての符号が「0」)や最大値(TOW−Countの全ての符号が「1」)付近の場合にこれらの符号列を想定符号列の一部又は全部として用いると、想定符号列と受信符号列とが僅かな位相ずれの場合にもこれらの重複部分では符号が一致する。また、TOW−Countなどが周期的な符号列の場合(例えば、「0」と「1」が交互に配列されている場合など)には、当該周期分の位相ずれでは、符号が一致する。従って、この場合には、通常の位相ずれの状態と比較して、不一致数が小さくなる。想定符号列の定め方によっては、この結果、位相ずれがある状態で不一致数が基準値Emより小さくなり、誤同定に繋がり得る。
本実施形態の電子時計1では、想定符号列との照合が開始されてから、合致タイミングの候補が取得された後更に所定ビット数、
図3では、時間Trの間に5ビット分の符号を同定するまでの間(比較幅)、1ビットずつ受信符号列の先頭位置を想定符号列の先頭位置からずらしながら不一致数を求める。そして、合致タイミングの候補のタイミングにおける不一致数(第1不一致数)の出現率(第1出現確率)と、比較幅内で当該第1不一致数に次いで小さい(即ち、先頭位置を1以上ずらした中では最も小さい)不一致数(第2不一致数)の出現率(第2出現確率)との比を誤同定の危険度として算出する。そして、この危険度が所定の基準危険度(第1基準値)以下である場合に、正しく合致タイミングが検出されたものと判断して日時の修正を行う。
【0044】
この場合、上述のように、想定符号列によっては正しい合致タイミングで想定符号率と完全に一致する受信符号列が取得されていた場合(不一致数が「0」)であっても合致タイミングと判定されない場合が生じ得る。そこで、不一致数が「0」の場合には、その出現率を「0」として危険度を算出することで、危険度が基準危険度以下となるようにすることが出来る。
【0045】
図4は、本実施形態の電子時計1における日時取得処理のホストCPU41による制御手順を示すフローチャートである。
この日時取得処理は、ユーザによる操作部49への実行命令の入力操作が検出されるか、又は予め定められた受信時刻や受信タイミングなどの条件が満たされた場合に起動される。
【0046】
日時取得処理が開始されると、ホストCPU41は、衛星電波受信処理部60を起動する(ステップS101)。また、ホストCPU41は、衛星電波受信処理部60に対し、初期データとして取得対象が日時情報であることを示す設定及び計時回路46の計数する日時の情報を送信する(ステップS102)。それから、衛星電波受信処理部60からのデータ出力を待ち受ける。なお、この待ち受け中に、ホストCPU41は、表示部47に受信中である旨を示す表示を行わせても良い。
【0047】
ホストCPU41は、衛星電波受信処理部60からの信号を待ち受けて、日時データを取得する(ステップS103)。それから、ホストCPU41は、衛星電波受信処理部60を停止させると共に(ステップS104)、計時回路46の計数する日時を修正する(ステップS105)。また、ホストCPU41は、RAM43に記憶された受信履歴を更新する(ステップS106)。そして、ホストCPU41は、日時取得処理を終了する。
【0048】
図5は、本実施形態の電子時計1における日時情報受信処理のモジュールCPU61による制御手順を示すフローチャートである。
この日時情報受信処理は、ホストCPU41により衛星電波受信処理部60が起動され、ホストCPU41からステップS102の処理で出力された取得対象情報が日時情報である場合に起動される。
【0049】
日時情報受信処理が起動されると、モジュールCPU61は、初期設定や動作チェックを行う。モジュールCPU61は、ホストCPU41からステップS102の処理で出力された日時情報を取得して、受信すべき航法メッセージの内容を決定し、また、当該内容に応じた受信開始タイミングや受信期間を定める(ステップS201)。このとき、モジュールCPU61は、記憶部63から前回の受信タイミングを取得して、当該前回の受信タイミングからの経過時間に応じて通常の3ワード受信に切り替えても良い。
【0050】
モジュールCPU61は、定められた受信期間中で同定すべき符号列部分の想定符号列を生成する(ステップS202)。想定符号列の長さや位置が可変の場合には、モジュールCPU61は、当該変更設定を記憶部63から取得して、適切な想定符号列を生成する。モジュールCPU61は、適切なタイミングでGPS衛星からの電波受信を開始して(ステップS203)、受信可能なGPS衛星からの電波を捕捉する(ステップS204)。モジュールCPU61は、受信電波から得られた信号に対して位相をずらしながら各GPS衛星のC/Aコードを適用することで逆スペクトラム拡散を試みて、GPS衛星からの信号を検出、捕捉する。
【0051】
GPS衛星からの信号が捕捉されると、モジュールCPU61は、当該GPS衛星を追尾しながら復調し、受信データの符号列(受信符号列)を取得する(ステップS205)。モジュールCPU61は、当該取得された受信データのうち想定符号列の配列幅に応じた所定ビット長を、当該生成された想定符号列と照合し、符号の不一致数Eを計数する(ステップS206)。計数された不一致数Eは、タイミング情報と共に記憶される。モジュールCPU61は、不一致数Eが基準値Em以下であるか否かを判別する(ステップS207)。基準値Em以下であると判別された場合には(ステップS207で“YES”)、モジュールCPU61は、当該タイミングを合致タイミングの候補として設定し、不一致数Eを最小不一致候補数E0(第1不一致数)とする(ステップS209)。それから、モジュールCPU61の処理は、ステップS210に移行する。符号の不一致数Eが基準値Em以下ではないと判別された場合には(ステップS207で“NO”)、モジュールCPU61の処理は、ステップS210に移行する。
なお、既に合致候補が設定されている状態で新たにステップS207の処理において基準値Em以下となる照合結果が得られたと判別された場合、例えば、当該合致候補の不一致数よりも新たな不一致数の方が小さい場合にのみ上書きで合致候補に設定しても良い。このとき、ステップS210の処理における合致候補設定後の取得ビット数及び照合回数は、「0」に初期化される。
或いは、この場合には、モジュールCPU61は、符号列の照合による日時の取得を中止して、従来の日時取得方法、例えば、3ワード受信に変更しても良い。
【0052】
ステップS210の処理に移行すると、モジュールCPU61は、合致タイミング候補の設定後更に5ビット分のデータを取得し、それぞれ想定符号列と照合されたか否かを判別する(ステップS210)。5ビット分取得、照合されていないと判別された場合には(ステップS210で“NO”)、モジュールCPU61は、想定符号列が対応する期間の開始から6秒(1サブフレーム分の送信周期)分の照合がなされたか否かを判別する(ステップS211)。6秒分の照合がなされていないと判別された場合には(ステップS211で“NO”)、モジュールCPU61の処理は、ステップS213に移行する。
【0053】
6秒分の照合がなされたと判別された場合には(ステップS211で“YES”)、モジュールCPU61は、次のサブフレームに対応する(即ち、サブフレームの送信周期後の時刻に基づく)想定符号配列を生成して更新する(ステップS212)。それから、モジュールCPU61の処理は、ステップS213に移行する。
【0054】
ステップS213の処理に移行すると、モジュールCPU61は、受信開始からタイムアウト時間が経過したか否かを判別する(ステップS213)。タイムアウト時間は、サブフレームの長さの所定数倍などに設定され、また、受信開始時のバッテリ容量や前回の受信からの経過時間などに応じて適宜変更されても良い。タイムアウト時間が経過していないと判別された場合には(ステップS213で“NO”)、モジュールCPU61の処理は、ステップS205に戻り、受信データの取得を続ける。タイムアウト時間が経過したと判別された場合には(ステップS213で“YES”)、モジュールCPU61の処理は、ステップS225に移行する。
【0055】
ステップS210の判別処理で、合致タイミングの候補設定後5ビット分のデータが取得され、それぞれ想定符号列と照合されたと判別された場合には(ステップS210で“YES”)、モジュールCPU61は、受信開始から(既に6秒以上の照合がなされている場合には、例えば、直近の6秒)当該5回の照合終了までで二番目に小さい不一致数を比較不一致数E2(第2不一致数)として設定する(ステップS221)。モジュールCPU61は、取得された最小不一致候補数E0、比較不一致数E2に対応する出現率P0、P2を各々算出する(ステップS222)。
【0056】
モジュールCPU61は、出現率P0、P2の比P0/P2により求められる危険度Pdが基準危険度Pm以下であるか否かを判別する(ステップS223)。基準危険度Pm以下ではない(基準危険度Pmより大きい)と判別された場合には(ステップS223で“NO”)、モジュールCPU61は、合致候補に係る設定をクリアして処理をステップS205に戻す。
【0057】
基準危険度Pm以下であると判別された場合には(ステップS223で“YES”)、モジュールCPU61は、当該合致タイミングの候補を正式に合致タイミングであるとして想定符号列の想定受信日時と、当該合致タイミングとに基づいて正式な日時を設定し、タイミングを調整してホストCPU41に出力する(ステップS224)。モジュールCPU61は、GPS衛星からの電波受信を終了して(ステップS225)、日時情報受信処理を終了する。
【0058】
[変形例1]
図6は、日時情報受信処理の変形例1を示すフローチャートである。
この変形例1の日時情報受信処理は、上記実施の形態における日時情報取得処理のステップS207の処理がステップS207aの処理に変更され、ステップS208の処理が追加され、また、ステップS221〜S223の処理が削除された点を除いて同一であり、同一の処理内容には同一の符号を付して説明を省略する。
【0059】
この、変形例1の日時情報受信処理では、想定符号列にTOW−Count及びサブフレームIDが必ず含まれる。
この日時情報受信処理において、モジュールCPU61は、受信符号列と想定符号列の各符号を照合した(ステップS206)後、不一致数Eが基準値Em以下であるかの判別と共に、最小不一致候補数E0が設定されている場合に、不一致数Eが当該最小不一致候補数E0以下であるか否かを判別する(ステップS207a)。基準値Em以下であり、且つ、最小不一致候補数E0が設定されていないか、設定されている場合には当該最小不一致候補数E0以下であると判別された場合には(ステップS207aで“YES”)、更に、不一致がTOW−Countの下2桁の何れかのビット及びサブフレームIDの3桁の何れかのビット(最下位ビットの側から少なくとも所定数の符号)のうち何れかを含むか否かを判別する(ステップS208)。何れかのビットが含まれると判別された場合には(ステップS208で“YES”)、モジュールCPU61の処理は、ステップS210に移行する。何れのビットも含まれないと判別された場合には(ステップS208で“NO”)、モジュールCPU61の処理は、ステップS209に移行する。
【0060】
不一致数Eが基準値Em以下ではないか、又は最小不一致候補数E0が設定されている場合に当該最小不一致候補数E0以下ではないと判別された場合には(ステップS207aで“NO”)、モジュールCPU61の処理は、ステップS210に移行する。
【0061】
このとき、更に、TOW−Countの下2桁とサブフレームIDが同期して不一致となっている場合には、想定された日時に係るサブフレームと異なるサブフレームが受信されている可能性があるとして、当該TOW−Count及びサブフレームIDに応じた日時で想定符号列を更新しても良いし、処理を3ワード受信に変更しても良い。
【0062】
また、TOW−CountやサブフレームIDだけでなく、アラートフラグなどの各種フラグについても、通常ではない状態(異常など)を示す「1」が受信符号列に含まれて不一致となった場合には、全体の不一致数など他の条件によらず想定符号列と合致していないものとして以降の処理を行わせることも出来る。
【0063】
[変形例2]
次に、日時情報受信処理の変形例2について説明する。
上述のように、想定符号列との照合がほぼ取れており、最小不一致候補数E0(特に、1以上の場合)が設定されているものの、現在日時を表すTOW−Countの配列などにより想定符号列と類似の符号列が生じて比較不一致数E2が十分に大きくならず、危険度Pdが基準危険度Pmより小さくならない場合がある。この変形例2の日時情報受信処理では、この場合の現在日時の取得改善及び電力消費の低減を図る。
本変形例の日時情報受信処理では、モジュールCPU61は、受信制御手段として機能する。
【0064】
図7は、日時情報受信処理の変形例2を示すフローチャートである。
この変形例2の日時情報受信処理は、上記実施の形態における日時情報取得処理にステップS231〜S235の処理が追加された点を除いて同一であり、同一の処理内容には同一の符号を付して説明を省略する。
【0065】
ステップS212の処理で想定符号列が更新されると、モジュールCPU61は、直近の6秒間(前のサブフレーム1周期分)で最小不一致候補数E0が設定されているか否かを判別する(ステップS231)。設定されていないと判別された場合には(ステップS231で“NO”)、モジュールCPU61の処理は、ステップS213に移行する。設定されていると判別された場合には(ステップS231で“YES”)、モジュールCPU61は、直近の6秒間で不一致数が小さい順に3つをそれぞれ、最小不一致候補数E0、比較不一致数E2及び参照不一致数E3(第3不一致数)として設定する(ステップS232)。ここで、最小不一致候補数E0が複数回(例えば、2回)設定されて何れもステップS223の条件を満たさなかった場合には、その中で最小の値が最小不一致数E0として再度設定され、2番目に小さい値が比較不一致数E2となる。モジュールCPU61は、最小不一致候補数E0、比較不一致数E2、及び参照不一致数E3に基づいて、出現率P0、P2、P3(第3出現確率)をそれぞれ算出する(ステップS233)。
【0066】
モジュールCPU61は、P0/P2から求められた危険度Pdが基準危険度Pm以下であり、且つP2/P3が10
−3(第2基準値)以下であるか否かを判別する(ステップS234)。何れかが満たされない場合には(ステップS234で“NO”)、モジュールCPU61の処理は、ステップS213に移行する。何れも満たされる場合には(ステップS234で“YES”)、モジュールCPU61は、間欠受信処理を呼び出して実行し(ステップS235)、その後、日時情報受信処理を終了する。
【0067】
図8は、本変形例の日時情報受信処理で呼び出される間欠受信処理の制御手順を示すフローチャートである。
【0068】
ステップS235の処理で間欠受信処理が呼び出されると、モジュールCPU61は、GPS受信を中断させる(ステップS301)。モジュールCPU61は、受信経過時間(或いは、計時回路46の計数する日時に基づく現在日時)が、現在受信されると想定されるサブフレームにおいて、先のサブフレーム1周期分の6秒間で最小不一致候補数E0が取得された符号列部分(第1受信符号列)又は比較不一致数E2が取得された符号列部分(第2受信符号列)の受信期間、即ち、先のサブフレームにおける当該符号列部分の6秒後の何れかであるか否かを判別する(ステップS302)。何れでもないと判別された場合には(ステップS302で“NO”)、CPU61は、ステップS302の処理を繰り返す。
【0069】
現在のサブフレーム1周期分における最小不一致候補数E0及び比較不一致数E2の少なくとも何れか一方に対応する符号列部分の受信期間内であると判別された場合には(ステップS302で“YES”)、モジュールCPU61は、GPS衛星からの電波受信を再開する(ステップS303)。モジュールCPU61は、受信電波中のGPS衛星からの電波を追尾し、復調された符号列を示す受信データを取得する(ステップS304)。
【0070】
モジュールCPU61は、最小不一致候補数E0及び比較不一致数E2の何れに対応する符号列部分の受信期間でもないか否かを判別する(ステップS305)。少なくとも何れかに対応する符号列部分の受信期間であると判別された場合には(ステップS305で“NO”)、モジュールCPU61の処理は、ステップS304に戻る。何れの符号列部分の受信期間でもないと判別された場合には(ステップS305で“YES”)、モジュールCPU61は、GPS衛星からの電波受信を終了する(ステップS306)。
なお、ここで定められる受信期間は、各サブフレーム周期において最小不一致候補数E0や比較不一致数E2が算出された符号列部分の受信タイミングと厳密に同一である必要はなく、必要に応じてこれらのタイミングを含むように若干広く設定することが出来る。
【0071】
モジュールCPU61は、最小不一致候補数E0及び比較不一致数E2に係る受信期間の受信が何れも終了したか否かを判別する(ステップS307)。何れかの不一致数に対応する符号列部分の受信期間の受信が終了していないと判別された場合には(ステップS307で“NO”)、モジュールCPU61の処理は、ステップS302に戻る。何れの受信期間における受信も終了していると判別された場合には(ステップS307で“YES”)、モジュールCPU61は、受信期間内における最小不一致数と二番目に小さい不一致数をそれぞれ新たな最小不一致候補数E0及び比較不一致数E2に設定し、これらに基づいて出現率P0、P2をそれぞれ算出する(ステップS308)。
なお、最小不一致候補数E0に対応する符号列部分と、比較不一致数E2に対応する符号列部分とが万一入れ替わった場合には、そのまま入れ替えて設定しても良い。また、受信期間が広めに設定された場合には、モジュールCPU61は、当該受信期間内の全ての符号列部分に対して照合及び最小不一致候補数E0と比較不一致数E2の設定を行っても良い。
【0072】
モジュールCPU61は、危険度Pdが基準危険度Pm以下であるか否かを判別する(ステップS309)。基準危険度Pm以下ではないと判別された場合には(ステップS309で“NO”)、モジュールCPU61は、タイムアウト時間が経過したか否かを判別し(ステップS311)、経過していないと判別された場合には(ステップS311で“NO”)、処理をステップS302に戻す。経過したと判別された場合には(ステップS311で“YES”)、モジュールCPU61は、間欠受信処理を終了して処理を日時情報受信処理に戻し、そのまま日時情報受信処理を終了する。
【0073】
ステップS309の判別処理で、危険度Pdが基準危険度Pm以下であると判別された場合には(ステップS309で“YES”)、モジュールCPU61は、想定符号列に応じた日時を取得してそのタイミングを設定し、当該タイミングでホストCPU41に日時情報を出力する(ステップS310)。そして、モジュールCPU61は、間欠受信処理を終了する。
【0074】
図9は、本変形例における受信期間の例を示す図である。
モジュールCPU61は、初期設定(ステップS201)、及び想定符号列の生成(ステップS202)の後、受信を開始する(ステップS203)。そして、GPS衛星が捕捉されると(ステップS204)、モジュールCPU61は、受信データの取得を開始し(ステップS205)、時刻t0から受信符号列と想定符号列の照合を順次開始する(ステップS206)。
【0075】
時刻t1s〜t1eが最小不一致候補数E0に係る受信期間として設定されると(ステップS207、S209)、その設定後符号が5つ同定されて照合された時刻t2で(ステップS210で“YES”)、比較不一致数E2及びこれに対応する受信期間t3s〜t3eが設定され(ステップS221)、危険度Pdと基準危険度Pmとが比較される(ステップS222、S223)。危険度Pdが基準危険度Pm以下ではない場合(ステップS223で“NO”)、モジュールCPU61は、ステップS205の処理に戻り、照合開始から6秒経過後の時刻t4において(ステップS211で“YES”)、想定符号列を更新すると共に(ステップS212)、ステップS231で“YES”に分岐して比較不一致数E2及びその期間(受信期間t3s〜t3e)と、受信期間t5s〜t5eにおける参照不一致数E3とを決定する(ステップS232)。即ち、この場合の1周期目の受信は、6秒分の照合がなされるまで継続される(1周期目において横向き太線で示した時刻t0〜時刻t4の期間)。
なお、比較不一致数E2の期間は、時刻t2において決定された受信期間とは異なっていても良い。また、受信期間t1s〜t1eと、受信期間t3s〜t3eは、部分的に重なっていても良い。
【0076】
出現率P0、P2、P3が算出され(ステップS233)、これらがステップS234の判別条件を満たしていた場合(ステップS234で“YES”)、モジュールCPU61の処理はステップS235に移行して、間欠受信処理が呼び出される。2周期目以降では、モジュールCPU61は、GPS衛星からの電波受信を中断し(ステップS301)、当該周期における最小不一致候補数E0に対応する受信期間t7s〜t7eと、比較不一致数E2に対応する受信期間t6s〜t6eのみ(「2周期目〜」において横向き太線で示した期間)受信動作を行わせる(ステップS302〜S307)。
【0077】
両期間の受信が終了した時刻t7eにおいて(ステップS307で“YES”)、モジュールCPU61は、新たに最小不一致候補数E0及び比較不一致数E2を設定してそれぞれの出現率P0、P2を算出する(ステップS308)。そして、危険度Pdが基準危険度Pm以下となった場合には(ステップS309で“YES”)、受信期間t7s〜t7eで想定符号列が検出されたと確定されて日時が取得される(ステップS310)。
【0078】
このように、符号の配列上想定符号列と不完全一致する受信符号列が同定されているものの確実性が低い場合に、次以降のサブフレーム周期では、当該合致部分及び比較部分のみの受信を行ない、想定符号列及び受信符号列の変化に基づく確実性の検証のみを行うことで受信効率を改善することが出来る。
【0079】
以上のように、本実施形態の電子時計1は、衛星電波を受信して、当該受信された衛星電波に応じた航法メッセージのフォーマットで符号化されている各符号を順次同定する衛星電波受信処理部60のRF部64、ベースバンド変換部65及び捕捉追尾部66と、モジュールCPU61とを備える電波時計であり、モジュールCPU61は、想定符号列生成手段として、同定される符号の配列のうち少なくとも一部からなる受信符号列として予め想定される想定符号列を生成し、合致検出手段として、想定符号列の各符号と受信符号列の各符号とを照合し、想定符号列との合致度が所定の基準条件を満たす受信符号列を検出し、日時取得手段として、所定の基準を満たす受信符号列をなす符号が受信された合致タイミングに基づいて日時を取得する。
このように、電波受信状況が悪いなどで、なかなか全ての符号が正確に同定されない場合であっても、短時間の受信時間で正確な符号列が取得されたか否かを判断することが出来るので、正確な日時情報をより効率良く取得することが出来る。
【0080】
また、予め想定符号列を生成して照合を行うことで正確な日時を取得することで、受信後に当該受信符号列を復号する手間を削減し、速やかに日時を確定させることが出来る。
【0081】
また、合致度は、送信符号列と想定符号列との間で照合された各符号の不一致数に応じて定められるので、容易な処理に基づいて正確に符号列が同定されたか否かの判断を行うことが出来る。
【0082】
また、合致検出に係る基準条件は、想定符号列との間で照合された各符号の不一致数が所定の上限値以下となる受信符号列の最小不一致候補数E0と、想定符号列に対して受信符号列の先頭位置を最小不一致候補数E0が得られた位置から所定の比較幅(照合開始から最小不一致候補数E0の得られた位置の後ろ符号5つ分まで)の中でずらした場合における各不一致数のうち最小の比較不一致数E2とに応じて、想定符号列に対して最小不一致候補数E0となる符号列が受信符号列として出現する出現率P0を、想定符号列に対して比較不一致数E2となる符号列が受信符号列として出現する出現率P2で除した値である危険度Pdが予め定められた基準危険度Pm以下となるように定められる。
即ち、単純に一致度が高いという理由だけではなく、他の受信符号列に対して十分に一致度が高いといえない場合には想定符号列と受信符号列とが合致すると判断されないので、TOW−Countなどで同一符号が連続するような日時において本来の合致タイミングでなくても一致度が高くなる場合に、誤ったタイミングを合致タイミングと判断するのを避けることが出来る。
【0083】
また、上述の出現率P0及び出現率P2は、受信符号列をなす各二値符号において二値が各々1/2の確率で出現するものとして求められるので、厳密に算出する手間を抑えながら精度の悪化を概ね抑えることが出来る。
【0084】
また、変形例2の日時情報受信処理において、航法メッセージのフォーマットに従って定められている送信周期(GPS衛星の場合にはサブフレームの送信周期)で基準値Em以下の最小不一致候補数E0が得られ、且つ出現率P0を出現率P2で除した値が基準危険度Pm以下ではない場合、受信制御手段としてのモジュールCPU61は、送信周期ごとに、最小不一致候補数E0に対応する符号列部分と、当該最小不一致候補数E0の出現率P0に対する危険度Pdが基準危険度Pm以下とならない出現率に対応する符号列部分のうち少なくとも比較不一致数E2に係る符号列部分とをそれぞれ含む一部の期間で衛星電波受信処理部60のRF部64、ベースバンド変換部65及び捕捉追尾部66に受信を行わせ、合致検出手段としてのモジュールCPU61は、当該一部の期間内の受信符号列のうち少なくとも最小不一致候補数E0に対応する符号列部分及び比較不一致数E2に対応する符号列部分と、想定符号列とを照合して、前記所定の基準条件を満たす受信符号列を検出する。
従って、想定符号列と概ね合致する受信符号列が同定されているものの、符号の配列上比較不一致数E2が大きくならず、同定された位置の確実性が低い場合に、次のサブフレーム周期以降では、当該合致部分及び比較部分のみの受信を行ない、想定符号列及び受信符号列が変化して確実性の検証のみを行うことで、受信に係る電力消費を低減しつつ、同定された位置の確認を行うことが出来るので、受信効率を改善することが出来る。
【0085】
また、受信制御手段としてのモジュールCPU61は、受信符号列の先頭位置が最小不一致候補数E0の得られた位置から上述の比較幅の中でずらされた場合における各不一致数のうち2番目に小さい参照不一致数E3に係る出現率P3が、出現率P2に比して所定の第2基準値より大きい、ここでは、10
3より大きい場合に、衛星電波受信処理部60のRF部64、ベースバンド変換部65及び捕捉追尾部66により、最小不一致候補数E0に対応する符号列部分及び比較不一致数E2に対応する符号列部分を含む期間で受信を行わせる。
このように、比較不一致数E2が最小不一致候補数E0を除く他の受信符号列に係る不一致数に対して十分小さい極小値となっていることで、たまたま他の位置に想定符号列と類似する符号列部分が受信符号列中に生じている場合には、当該類似する符号列部分が正しく想定符号列に合致する位置ではないことを次のサブフレーム周期以降で確認しさえすれば良く、必要以上に受信や照合を行わないので、効率良く確実に想定符号列と合致する受信符号列を検出することが出来る。
【0086】
また、第2基準値は、出現率P2に対する出現率P3の比率により定められるので、比較不一致数E2に対応する符号列部分以外の符号列部分が想定符号列と一致する正確な位置である可能性を十分に排除することが出来る。
【0087】
また、一方で、基準条件は、不一致数の上限により定められることで、除算などを用いずにシンプルな判別処理で正確な合致タイミングを取得することが出来る。
【0088】
また、このとき、不一致数の上限は、想定符号列に対して当該上限の不一致数となる符号の配列が受信符号列として出現する確率が予め定められた第3基準値未満となるように定められるので、誤同定の確率を製品の寿命や用途などに応じて所望の範囲に適切に収めることが出来る。
【0089】
また、この出現の確率は、受信符号列をなす各二値符号において二値が各々1/2の確率で出現するものとして求められるので、上述の出現率P0及び出現率P2と同様に、厳密に算出する手間を抑えつつ精度の悪化を抑えることが出来る。
【0090】
また、日時を計数する計時回路46を備え、想定符号列生成手段としてのモジュールCPU61は、航法メッセージのフォーマットに従って定められている送信周期(GPS衛星の場合にはサブフレームの送信周期)ごとに更新される現在の時刻に応じたTOW−CountやサブフレームIDのうち、最下位ビットの側から少なくとも所定数の符号を含む想定符号列を計時回路46の計数する日時に基づいて生成するので、当該送信周期(サブフレーム)単位で受信タイミングがずれた場合などに確実にずれが検出可能であり、また、ずれ量の推定も可能になる。
【0091】
また、合致検出手段としてのモジュールCPU61は、想定符号列と受信符号列との間で照合された各符号中で、当該時刻に対応した符号に不一致があった場合には、このような送信周期単位でのずれの可能性を考慮して受信符号列と想定符号列との合致度が所定の基準条件を満たさないと判断することで、想定外の不正確な日時取得の発生を防ぐことが出来る。
【0092】
また、想定符号列生成手段としてのモジュールCPU61は、想定符号列の先頭の符号位置に対する受信符号列の先頭の符号位置をサブフレーム長に応じた300ビット数以上のずれ幅の範囲でずらして求められた合致度が、何れも所定の基準条件を満たさなかった場合に、日時情報が次のサブフレーム内で想定される値に変化するのに応じて想定符号列を更新する。従って、当該サブフレーム内で受信状態が非常に悪いタイミングで合致してしまい、当該合致タイミングの検出が行われなかった場合でも、次のサブフレームで適切に検出可能とすることが出来る。
【0093】
また、想定符号列生成手段としてのモジュールCPU61は、航法メッセージのフォーマットに従って定められているサブフレーム周期ごとに送信される固定符号列であるプリアンブルや予備ビットなどを含めて想定符号列を生成するので、受信間隔などによらず容易に想定符号列に利用することが出来、また、ビット長を伸ばすのに用いることが出来るので、誤同定の虞を低減させることが出来る。また、このような固定符号列は、想定符号列と受信符号列とで先頭の位置が当該固定符号列の長さ未満で異なる場合に不一致になるビット数が多いので、TOW−Countなどとは対照的に、日時に応じて誤同定される可能性が上昇しない。
【0094】
また、直近の衛星電波の受信履歴を記憶する履歴記憶部632と、直近の衛星電波受信により取得された符号列を履歴符号列として記憶する符号記憶部633と、を備え、想定符号列生成手段としてのモジュールCPU61は、履歴符号列に係る情報の種別に応じて、履歴符号列のうち直近の衛星電波の受信からの経過時間内に変化しないと判断された部分の少なくとも一部を想定符号列に含める。このように、テレメトリワードや予測軌道情報など、必ずしも符号列を予想することが出来るものではないが、短時間では変化することが想定されないものについては、符号記憶部633に記憶させておいて想定符号列に利用することで、容易に想定符号列のビット長を伸ばして誤同定の可能性を低減させることが出来る。
【0095】
また、衛星電波は、GPS衛星から送信されたものであり、履歴符号列には、テレメトリメッセージが含まれるので、上述のように短期間では符号列の変化が想定されないものについて、14ビット分効率良く想定符号列のビット長を伸ばすことが出来る。
【0096】
また、想定符号列には、受信符号列の符号と一致しない場合に、合致検出手段としてのモジュールCPU61が所定の基準条件を満たさないと判断するフラグなどが含まれるので、GPS衛星からの送信異常などが生じている場合には、通常通りの処理を行わせないようにすることが出来る。
【0097】
また想定符号列には、日時の変化に伴って同様な変化が生じるTOW−CountとサブフレームIDの少なくとも一部ずつが含まれ、合致検出手段としてのモジュールCPU61は、これらの対応する符号列部分が日時の変化に応じた値により同時に受信符号列と不一致となった場合には、所定の基準を満たさないと判断する。従って、全体として不一致数などの他の条件が満たされていても、サブフレーム単位でのずれなどの問題が生じている可能性があるものとして安全を期してより確実な受信方法に切り替えたりすることで、誤同定の発生を防ぐことが出来る。
【0098】
また、想定符号列生成手段としてのモジュールCPU61は、TOW−CountとサブフレームIDとが日時の変化に従って同時に受信符号列と不一致になった場合には、当該不一致の受信符号列部分の何れからも示される日時に応じて想定符号列を更新することが出来る。このように、サブフレーム単位でのずれが生じた可能性がある場合には、当該サブフレーム単位でのずれを織り込んで改めて想定符号列を生成し、合致度の判定を行うことで、速やかに正確な日時の取得を行うことが出来る。
【0099】
また、上述の日時情報の取得方法を用いることで、複数の電子機器やCPUを併用して日時の取得を行う場合などにも同様に効率的且つ正確な日時情報の取得を行うことが出来る。
【0100】
また、上述の日時情報の取得方法に応じたプログラムを測位衛星からの衛星電波を受信可能な電子機器にインストールして用いることで、幅広い電子機器で効率的且つ正確な日時情報の取得を行わせることが出来る。
【0101】
なお、本発明は、上記実施の形態に限られるものではなく、様々な変更が可能である。
例えば、上記実施の形態では、モジュールCPU61が日時取得に係る各種処理を行う構成を例に挙げて説明したが、ホストCPU41で行われても良く、或いは、モジュールCPU61とホストCPU41とで一部分ずつ分担して行われても良い。また、これに伴って、直近の受信履歴や受信された符号列も衛星電波受信処理部60の記憶部63ではなく、一部または全部がRAM43の不揮発性メモリ部分などに記憶されても良い。
【0102】
また、上記実施の形態で示した想定符号列の長さは、条件に応じて変更可能としても良い。例えば、バッテリの容量に応じてタイムアウト時間と共に短くすることとしても良い。例えば、ステップS201で取得された前回の受信日時からの経過時間が十分に小さく、想定されるずれが数ビット程度である場合には、固定符号列であるプリアンブルを誤同定する可能性が非常に低くなるので、想定符号列として当該プリアンブルのみを設定し、受信符号列との完全一致タイミングを用いて日時を取得しても良い。この場合、ステップS202の処理では暫定的に8ビットより長い想定符号列を設定し、ステップS204で捕捉されたGPS衛星からの電波受信強度が基準レベルより強い場合にのみ、想定符号列をプリアンブルのみに変更しても良い。
【0103】
同様に、基準値Emの値を受信強度といった他の条件に応じて変更しても良い。ステップS204で捕捉されたGPS衛星からの電波の信号強度(S/N比)が十分に大きいにも関わらず、多くの符号の誤同定が生じることは、稀と考えられるので、S/N比が上昇するに伴って基準値Emを低下させて他所に出現した類似符号列と合致すると誤同定される確率を低減させることが出来る。
【0104】
また、上記実施の形態では、出現率P0、P2の比を用いる場合と、最小不一致候補数E0を用いる場合を例に挙げて説明したが、他の判定基準、例えば、最小不一致候補数E0の上限と比較不一致数E2の下限とをそれぞれ設けて判定を行うなどであっても良い。
【0105】
また、上記実施の形態では、最小不一致候補数E0が取得された後、更に5ビット分の受信符号列を取得してから比較不一致数E2を取得したが、これに限られない。最小不一致候補数E0が取得された時点で既に得られていた照合結果のみを用いても良いし、或いは、照合開始からの照合回数に応じて最小不一致候補数E0の設定後における照合回数が定められても良い。また、最小不一致候補数E0の設定前の照合結果を照合開始後全て又は直近のサブフレーム一周期分用いるのではなく、他の範囲で適宜定められても良い。
【0106】
また、上記変形例2では、比較不一致数E2が他の照合結果に係る不一致数に対して十分に小さい値であることを条件として間欠受信処理を実行したが、これに限られない。出現率P0に対して出現率が十分に大きくならない不一致数となる受信符号列が複数ある場合には、当該複数の符号列の一部又は全部を含みつつ、全体として、2周期目以降におけるサブフレーム1周期分の受信時間を短縮出来るように当該受信時間が設定されても良い。
【0107】
また、上記実施の形態では、初めから受信想定タイミングが確定されていて、タイミングずれのみを用いて正確な日時を取得したが、照合され、合致が確認された符号列を解読して日時情報を取得しても良い。
【0108】
また、上記実施の形態では、GPS衛星からの電波受信を例に挙げて説明したが、GPS以外のナビゲーションシステム、例えば、ロシアのGLONASSや欧州のGalileoに係る衛星からの電波を用いて、各々のフォーマットに応じた符号列との照合を行っても良い。また、GPSに準拠した電波を送信する日本の準天頂衛星などからの受信電波に対しても本発明を適用可能である。GLONASS衛星からの電波を受信して用いる場合には、ストリングの送信時間(2秒)を送信周期とし、ストリング番号を時刻対応情報として用いることが出来る。
【0109】
また、上記実施の形態では、サブフレームIDとTOW−Countの対応関係について説明したが、他の部分、例えば、軌道情報(エフェメリス)と予測軌道情報(アルマナック)の対応関係が用いられても良い。
【0110】
また、上記実施の形態では、アナログ電子時計を例に挙げて説明したが、デジタル電子時計でも良く、或いは、これらの組合せであっても良い。
【0111】
また、上記実施の形態で示した基準条件の設定は、状況に応じて任意に単独又は組み合わされて用いられることが可能である。例えば、日時情報受信処理として示した2つのフローチャートで示された条件判定は、適宜追加、削除又は入れ替えされても良い。
【0112】
また、以上の説明では、本発明に係るモジュールCPU61の処理動作に係るタイムゾーン算出処理などの測位に係る動作処理プログラムのコンピュータ読み取り可能な媒体として不揮発性メモリからなる記憶部63を例に挙げて説明したが、これに限定されない。その他のコンピュータ読み取り可能な媒体として、HDD(Hard Disk Drive)や、CD−ROMやDVDディスクなどの可搬型記録媒体を適用することが可能である。また、本発明に係るプログラムのデータを通信回線を介して提供する媒体として、キャリアウェーブ(搬送波)も本発明に適用される。
その他、上記実施の形態で示した具体的な構成、動作の内容や手順などは、本発明の趣旨を逸脱しない範囲において適宜変更可能である。
【0113】
本発明のいくつかの実施形態を説明したが、本発明の範囲は、上述の実施の形態に限定されるものではなく、特許請求の範囲に記載された発明の範囲とその均等の範囲を含む。
以下に、この出願の願書に最初に添付した特許請求の範囲に記載した発明を付記する。付記に記載した請求項の項番は、この出願の願書に最初に添付した特許請求の範囲の通りである。
【0114】
[付記]
<請求項1>
衛星電波を受信して、当該受信された衛星電波に応じたフォーマットで符号化されている各符号を順次同定する電波受信手段と、
前記同定される符号の配列のうち少なくとも一部からなる受信符号列として予め想定される想定符号列を生成する想定符号列生成手段と、
前記想定符号列の各符号と前記受信符号列の各符号とを照合し、前記想定符号列との合致度が所定の基準条件を満たす前記受信符号列を検出する合致検出手段と、
前記所定の基準条件を満たす前記受信符号列をなす前記符号が受信された合致タイミングに基づいて日時を取得する日時取得手段と
を備えることを特徴とする電波時計。
<請求項2>
前記合致度は、前記受信符号列と前記想定符号列との間で照合された各符号の不一致数に応じて定められることを特徴とする請求項1記載の電波時計。
<請求項3>
前記所定の基準条件は、前記想定符号列との間で照合された各符号の不一致数が所定の上限値以下となる前記受信符号列の第1不一致数と、前記想定符号列に対して前記受信符号列の先頭位置を前記第1不一致数が得られた位置から所定の比較幅の中でずらした場合における各不一致数のうち最小の第2不一致数とに応じて、前記想定符号列に対して前記第1不一致数となる符号列が前記受信符号列として出現する第1出現確率を、前記想定符号列に対して前記第2不一致数となる符号列が前記受信符号列として出現する第2出現確率で除した値が予め定められた第1基準値以下となるように定められることを特徴とする請求項2記載の電波時計。
<請求項4>
前記第1出現確率及び前記第2出現確率は、前記受信符号列をなす各二値符号おいて二値が各々1/2の確率で出現するものとして求められることを特徴とする請求項3記載の電波時計。
<請求項5>
前記フォーマットに従って定められている送信周期内で前記上限値以下の前記第1不一致数が得られ、且つ前記第1出現確率を前記第2出現確率で除した値が前記第1基準値以下ではない場合、前記送信周期ごとに、前記第1出現確率に対応する第1受信符号列と、当該第1出現確率に対して前記第1基準値を満たさない出現確率に対応する受信符号列のうち少なくとも前記第2出現確率に対応する第2受信符号列と、を含む一部の期間で前記電波受信手段に受信を行わせる受信制御手段を備え、
前記合致検出手段は、当該一部の期間内の受信符号列のうち少なくとも前記第1受信符号列及び前記第2受信符号列と前記想定符号列とを照合して、前記所定の基準条件を満たす受信符号列を検出する
ことを特徴とする請求項3又は4記載の電波時計。
<請求項6>
前記受信制御手段は、受信符号列の前記先頭位置が前記第1不一致数の得られた位置から前記所定の比較幅の中でずらされた場合における各不一致数のうち2番目に小さい第3不一致数に係る第3出現確率が所定の第2基準値より大きい場合に、前記電波受信手段により前記第1出現確率に対応する受信符号列と前記第2出現確率に対応する受信符号列とを含む一部の期間での受信を行わせることを特徴とする請求項5記載の電波時計。
<請求項7>
前記第2基準値は、前記第2出現確率に対する前記第3出現確率の比率により定められることを特徴とする請求項6記載の電波時計。
<請求項8>
前記所定の基準条件は、前記不一致数の上限により定められることを特徴とする請求項2記載の電波時計。
<請求項9>
前記不一致数の上限は、前記想定符号列に対して当該上限の不一致数となる符号の配列が前記受信符号列として出現する確率が予め定められた第3基準値以下となるように定められることを特徴とする請求項8記載の電波時計。
<請求項10>
前記確率は、前記受信符号列をなす各二値符号において二値が各々1/2の確率で出現するものとして求められることを特徴とする請求項9記載の電波時計。
<請求項11>
日時を計数する計時手段を備え、
前記想定符号列生成手段は、前記フォーマットに従って定められている送信周期ごとに更新される現在の時刻に応じた時刻対応情報のうち、最下位ビットの側から少なくとも所定数の符号を含む前記想定符号列を前記計時手段の計数する日時に基づいて生成することを特徴とする請求項1〜10の何れか一項に記載の電波時計。
<請求項12>
前記合致検出手段は、前記想定符号列と前記受信符号列との間で照合された各符号中で、前記少なくとも所定数の符号に不一致があった場合には、当該受信符号列と前記想定符号列との合致度が前記所定の基準条件を満たさないと判断することを特徴とする請求項11記載の電波時計。
<請求項13>
前記想定符号列生成手段は、前記想定符号列の先頭の符号位置に対する前記受信符号列の先頭の符号位置を前記送信周期に応じた符号数以上のずれ幅の範囲でずらして求められた前記合致度が、何れも前記所定の基準条件を満たさなかった場合に、前記時刻対応情報の変化に応じて前記想定符号列を更新することを特徴とする請求項11又は12記載の電波時計。
<請求項14>
前記想定符号列生成手段は、前記フォーマットに従って定められている送信周期ごとに送信される固定符号列を含めて前記想定符号列を生成することを特徴とする請求項1〜13の何れか一項に記載の電波時計。
<請求項15>
直近の衛星電波の受信履歴を記憶する履歴記憶手段と、
直近の衛星電波の受信により取得された符号列を履歴符号列として記憶する符号列記憶手段と、
を備え、
前記想定符号列生成手段は、前記履歴符号列に係る情報の種別に応じて、当該履歴符号列のうち前記直近の衛星電波の受信からの経過時間内に変化しないと判断された部分の少なくとも一部を前記想定符号列に含める
ことを特徴とする請求項1〜14の何れか一項に記載の電波時計。
<請求項16>
前記衛星電波は、GPS衛星から送信されたものであり、
前記履歴符号列には、テレメトリメッセージが含まれることを特徴とする請求項15記載の電波時計。
<請求項17>
前記想定符号列には、前記受信符号列の符号と一致しない場合に、前記合致検出手段が前記所定の基準条件を満たさないと判断する符号が含まれることを特徴とする請求項1〜16の何れか一項に記載の電波時計。
<請求項18>
前記想定符号列には、所定の対応関係に従って変化する複数の対応符号列部分が含まれ、
前記合致検出手段は、当該対応符号列部分が前記所定の対応関係に従って同時に前記受信符号列と不一致となった場合には、前記所定の基準条件を満たさないと判断することを特徴とする請求項1〜17の何れか一項に記載の電波時計。
<請求項19>
前記衛星電波は、GPS衛星から送信されたものであり、
前記対応符号列部分は、TOW−CountとサブフレームIDであることを特徴とする請求項18記載の電波時計。
<請求項20>
前記想定符号列生成手段は、TOW−CountとサブフレームIDとが前記所定の対応関係に従って前記受信符号列と不一致になった場合には、当該所定の対応関係に従って前記想定符号列を更新することを特徴とする請求項19記載の電波時計。
<請求項21>
衛星電波を受信する電波受信手段を備える電波時計の日時情報取得方法であって、
前記受信された衛星電波に応じたフォーマットで符号化されている各符号を順次同定する符号同定ステップ、
前記同定される符号の配列のうち少なくとも一部からなる受信符号列として予め想定される想定符号列を生成する想定符号列生成ステップ、
前記想定符号列の各符号と前記受信符号列の各符号とを照合し、前記想定符号列との合致度が所定の基準条件を満たす前記受信符号列を検出する合致検出ステップ、
前記所定の基準条件を満たす前記受信符号列をなす前記符号が受信された合致タイミングに基づいて日時を取得する日時取得ステップ、
を含むことを特徴とする日時情報取得方法。
<請求項22>
衛星電波を受信する電波受信手段を備えるコンピュータを、
前記受信された衛星電波に応じたフォーマットで符号化されている各符号を順次同定する符号同定手段、
前記同定される符号の配列のうち少なくとも一部からなる受信符号列として予め想定される想定符号列を生成する想定符号列生成手段、
前記想定符号列の各符号と前記受信符号列の各符号とを照合し、前記想定符号列との合致度が所定の基準条件を満たす前記受信符号列を検出する合致検出手段、
前記所定の基準条件を満たす前記受信符号列をなす前記符号が受信された合致タイミングに基づいて日時を取得する日時取得手段、
として機能させることを特徴とするプログラム。