ラズベリーパイ Pi3でGPSでSt1 NTPserver

この記事を読む およそ時間 2

ラズベリーパイ Pi3でGPSでSt1 NTPserver

まあ、こんな事を書いてる訳ですが、NTPでST1の階層のNTPserverを気軽に上げたくないですか?あるんですよ。NTPアプライアンスって奴が!何十万もだせば手に入るんですよ。そりゃそうなんですが・・・。

非常に良さそうですよね。こういうのは・・・。是非欲しい気がするけど、多分おそらく価格はパートナーに問い合わせろと書いてますので、おそらくベースで言うと60万程度じゃないですかね?そして、業務機ってそれだけじゃ終わらないのですよ。年間保守費用ってのがある程度数万から数十万かかってくる訳です。

下記は別の奴ですが、とりあえず60万ですよ。これらのタイムサーバはアンテナの設置などで、これにプラス工事費がかかってくるんですよね。気軽に購入できる代物でもないですよ。ぶっちゃけると、そんなに時間に拘らないならこの記事読んでないですよね?w

そして、そんな金額だしてらせませんよね。たかが時間がを正確に合わせるだけですよ。まあ、そうですよね。という事で2万程度で同じ事が出来るとしたらどうですか?買いたいですか?そうですよね?買いたいです。
でなんか代用できないかな?って思って色々やってたんですが、ラズベリーパイって言う組込系のおもちゃで一応行けるんですよ。

これですよこれ!

何を言ってるか?そうなんですよ。今回作った奴ですが、USBのGPSモジュールをデバイスとして認識させて、そこのGPS情報からNTPのST1を実現しようとしているのですが、そこまでは良かったですよね。結論からすると、全く受信されていません。全然受信されてないので数値取れてないです・・・。

一応受信は、しようとしてますね。ただ、シグナルが0なんです。
でこうなったら、どうするか?こうするしかないんですよね。リブートです。いわゆる再起動ですね。

そうすると、徐々にGPSの信号をひらっい出してくれます。だいたい3個衛星をひらえれば時刻はとれてきます。

はい。このように測位される訳です。

測位されると、ntpdのほうもそのデータを使用して時間の提供が行われます。SHMの先頭*になっているので、これはすでにGPS情報からの時刻同期で動いている事が分かります。

Zabbixのグラフも表示され出しますね。赤色の線がJiterなのでどれだけ正確な値かどうかを見る指標となります。

Local環境のサーバ立ちも一応ラズベリーパイのNTPをむいてます。ただ、全く相手にもされてないですね。もう数日オフラインなのでJitterの評価が92とかになって他のタイムサーバの方に向いてますね。もう2つ登録しているのは、情報通信研究機構をむいてます。じゃあ、それでもいいやんと言われそうですが、それにはロマンがないですよね。ITのエンジニアって、ロマンを求めているんじゃないですか?違いますかね?

そして、しばらくは受信してくれるのですが、おそらくGPSモジュールが安定性がなく、断続的にGPSをつかんでおいてくれない事が最大の原因だと思っています。Zabbixでその模様をグラフ化したのが下記のグラフです。全然受信出来てない時間が続いてますね。

それに気がつきました?やたらとJitterが高い事を!そうですね。PPSがUSB経由だととれないというか、出力そもそも論で申し訳ないんだけど、出力されていないんですよね。なので、仮にGPSをひらえた場合でもそんなに精度が高くないのです。

PPSとは!?

PPSとは、1秒間に1回だけでる非常に正確なパルス波です。なので、この正確なパルス波を使って時間を刻んで行きましょうという話です。全ては、PPSがとれていない事で、Jitterが高い数値から落ちないですね。悪の根源ですね。PPSがとれてなくても10msくらいのJitterくらいで推移するので、事実上1秒から10ms程前後ずれているだけという話になりますが、されど10msなんですよね。PPSを使うとこれが1msとか位まで精度が向上するのです。とすると、情報通信研究機構のNTPでJitterが画像を採取した時で2程度なってますが、そこをlocalのNTPでPPS ST1をあげると1ms程度になるのでそれより精度が上がり、localのNTPに会わせた方がより高精度という事になります。

という事で、ちょっともっと高精度に改造してみましょうか。

まずは、上記のような基盤を追加します。こいつは良く出来ていて、ラズパイって電源落としたら時間情報とか全部消えちゃんですよ。ですが、これバッテリーを積んでいて、電源OFF時でもちゃんと時間を刻んでくれる優れものです。それに、もちろんPPSも出力されており外部アンテナの端子も出ています。これでGPSアンテナを外に出すことでより受信感度の良い電波を拾えるようになります。ラズベリーパイのOS設定については、基盤が届き次第追って掲載していこうと思います。なお、この基盤写真上部の端子は半田付けされて折らず自分で半田付けするしかないので要注意です。

この位楽勝ですけどね。では、これ上手く行けばGPSアンテナとラズベリーパイとこの基盤とOSをセットした状況で売り出すかも知れません。ネットワーク環境がない所でも窓際にこれ置いて、NTPの向け先をこいつにすれば、全然正確な時刻に合うわけなので、それが2万円でも上に書いた様なアプライアンスを何十万もするやつ買わなくても相当安くあがります。

もちろん、GPSアンテナの設置なんかも、こちらでやりますし調整もしますよ。導入時、お客様のlocal環境に1IPアドレス固定で払出しいただけるとだけで、後は全部の端末をそのiPに設定してもらうだけで、時刻同期出来るという仕様にしたいと思います。100台程度ならこいつ1台でこなせるでしょうね。駄目なら2台・3台とスタックして行けば、冗長化も出来ますしより安定するでしょうね。

Related posts