手元の環境下でのNTPサーバ運用

最終更新日 2021年07月05日

手元の作業環境では、Localゾーンに接続しNTP同期が出来る機器はすべてSTM32miniShieldで構築したGPS-NTPサーバにアクセスして時刻同期を掛けるようにしています。

ソースコードのUpdate 等で止まっているとき以外はずっと動いています。そこそこ安定していますし、異常があればWatchDogタイマでリスタートが掛かり、本当に止まっている期間はありません。

基本SNTPサーバです。NTPパケットを受け取ったら内部時計値を返します。
一方内部時計値は1秒毎にGPSセンテンスを受けて補正しています。

  • トレーディングカードケースとして販売されているサナダ精工L-8997に納めて運用しています。
  • IPアドレスは固定 192.168.0.199 で運用しています。
  • GPSアンテナはCrosstourのCR900対応アンテナを使っています。入手性を考慮。
  • 電源はTOPK・ 8-Port Quick Charge 3.0 USB Chargerを使っています。
  • ChargerDoctorで電源使用量をチェックしていますが、200mA程消費しています。

ブラウザからhttp://192.168.0.199/にアクセスするとメニュー画面が出ます。

メニュー1をクリックすることで、設定情報の確認と変更が出来ます。

ここに表示している内容はEEPROM相当に書き込まれています。※STM32duinoではフラッシュメモリをEEPROM機能として代用しています。

メニュー2をクリックすると最新取得のGPSセンテンスを表示します。

位置情報を表示したくなくて、リセット直後の取得内容にしました。時刻情報に少数位以下が000になっていないのは3つのGPSを捕らえ切れていないという事になり、位置情報を演算できていません。数分で位置情報を確立できます。

グラフは最新24時間のGPS情報をロギングしています。緯度経度はアンテナ位置を移動させるとちゃんと反応します。

WindowsPCからNTPに時刻問い合わせをするにはNTPパケットを投げかければいいのですが、NTPサーバの時刻のみを得る方法は判りません。PCを同期させたり、サーバの情報を取得したりすることはコマンドラインで実現出来ます。

LabVIEWからNTPサーバの時刻を取得するコードは作成してみました。普通に時刻取得可能です。

戯言(nonsense)に戻る


免責事項

本ソフトウエアは、あなたに対して何も保証しません。本ソフトウエアの関係者(他の利用者も含む)は、あなたに対して一切責任を負いません。
あなたが、本ソフトウエアを利用(コンパイル後の再利用など全てを含む)する場合は、自己責任で行う必要があります。

本ソフトウエアの著作権はToolsBoxに帰属します。
本ソフトウエアをご利用の結果生じた損害について、ToolsBoxは一切責任を負いません。
ToolsBoxはコンテンツとして提供する全ての文章、画像等について、内容の合法性・正確性・安全性等、において最善の注意をし、作成していますが、保証するものではありません。
ToolsBoxはリンクをしている外部サイトについては、何ら保証しません。
ToolsBoxは事前の予告無く、本ソフトウエアの開発・提供を中止する可能性があります。

商標・登録商標

Microsoft、Windows、WindowsNTは米国Microsoft Corporationの米国およびその他の国における登録商標です。
Windows Vista、Windows XPは、米国Microsoft Corporation.の商品名称です。
LabVIEW、National Instruments、NI、ni.comはNational Instrumentsの登録商標です。
I2Cは、NXP Semiconductors社の登録商標です。
その他の企業名ならびに製品名は、それぞれの会社の商標もしくは登録商標です。
すべての商標および登録商標は、それぞれの所有者に帰属します。