Tweet

水晶振動子と時刻ずれ

「パソコンの時計って意外と時刻がずれる」と思ったことは無いだろうか.

最近は標準時サーバと定期的に通信して時計を合わせているパソコンが多いので,時計のずれを気にする機会は減ってきているとは思う. が,標準時サーバと通信できないような環境も多いので,そういう事態が撲滅されたというわけでもないだろう. というわけで,「どのぐらいの精度で実際にどのぐらいずれるものなのか」という計算をしてみる.

エプソントヨコム社の FC-12M という部品を例にする. これは水晶振動子と言って,時刻を刻む元になる部品である. 機械時計の振り子やテンプと同じ役割をするものだと思えばいい.

この部品は公称周波数が 32.768kHz である. つまり,(この部品を適切な回路に組み込めば,)1秒間に 32768 個のパルスが出てくるということを意味している. そして,32768 個のパルスごとにデジタル時計の秒針(って針はないけど)を1つ進める機構を取り付ければ時計ができあがるわけである.

が,世の中,完全に正確なものはほとんどありえない. というわけで,この水晶振動子のカタログにも「周波数許容偏差」という項目があり,±20 x 10^(-6) とある. 部品が作られた時点で最大これだけの狂いがありうるわけである.

つまり,実際のこの部品は,1秒あたり

32768 x ( 1 ± 20 x 10^(-6) ) = 32768 ± 0.65536

個のパルスを発生することになる.

1 日あたりではどうなるだろうか?

32768 x ( 1 ± 20 x 10^(-6) ) x 60 x 60 x 24 = 2831155200 ± 56623.104

1 日あたり最大で 56623.104 個だけパルスが多かったり少なかったりするわけである. これを「32768 パルスごとに秒針を進める機構」に入れると

56623.104 / 32768 = 1.728

つまり,1 日あたり最大 1.728 秒時計が狂う計算になる.

月あたりで見れば

1.728 * 30 = 51.84

50 秒あまり狂うことになる. 実際のところ,周波数偏差が 50 x 10^(-6) とか 100 x 10^(-6) ぐらいの部品も使われてたりするので,この誤差の数倍程度の狂いは十分ありうるわけである.


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2010-01-13 (水) 18:28:55 (3662d)