NTP가 GPS와 동기화되지 않음

NTP가 GPS와 동기화되지 않음

NTP와 GPS를 사용하여 시간 동기화를 시도했습니다. cgps -s 명령에서 시간을 얻을 수 있지만 NTP가 시간과 동기화되지 않습니다.

이것은 내 ntp.conf입니다.

tos mindist 1.0

# GPS Serial data reference
server 127.127.28.0 minpoll 4 maxpoll 4 prefer
fudge 127.127.28.0 refid GPS
fudge 127.127.28.0 time1 +0.140  # coarse processing delay offset

# GPS PPS reference
server 127.127.22.0 minpoll 4 maxpoll 4
fudge 127.127.22.0 refid PPS
fudge 127.127.22.0 flag3 1  # enable kernel PLL/FLL clock discipline

ntpd 상태는 다음과 같습니다.

# ntpq -c peer -c as -c rl
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
 SHM(0)          .GPS.            0 l    -   16    0    0.000    0.000   0.000
 PPS(0)          .PPS.            0 l    -   16    0    0.000    0.000   0.000

ind assid status  conf reach auth condition  last_event cnt
===========================================================
  1 49508  801b   yes    no  none    reject clock_alarm  1
  2 49509  8011   yes    no  none    reject    mobilize  1
associd=0 status=c011 leap_alarm, sync_unspec, 1 event, freq_not_set,
version="ntpd [email protected] Wed Mar  8 00:02:05 UTC 2017 (1)",
processor="armv7l", system="Linux/3.14.2", leap=11, stratum=16,
precision=-20, rootdelay=0.000, rootdisp=34.350, refid=INIT,
reftime=00000000.00000000  Thu, Feb  7 2036 14:28:16.000,
clock=d66f067f.64a88e62  Thu, Jan  2 2014  5:26:23.393, peer=0, tc=3,
mintc=3, offset=0.000, frequency=0.000, sys_jitter=0.000,
clk_jitter=0.001, clk_wander=0.000

이것은 cgps 명령의 출력입니다:

# cgps -s
┌───────────────────────────────────────────┐
│    Time:       2017-03-15T00:51:10.000Z   │
│    Latitude:    37.927624 S               │
│    Longitude:  145.135400 E               │
│    Altitude:   261.5 ft                   │
│    Speed:      0.1 mph                    │
│    Heading:    0.0 deg (true)             │
│    Climb:      0.0 ft/min                 │
│    Status:     3D FIX (5 secs)            │
│    Longitude Err:   +/- 61 ft             │
│    Latitude Err:    +/- 142 ft            │
│    Altitude Err:    +/- 75 ft             │
│    Course Err:      n/a                   │                                 
│    Speed Err:       +/- 194 mph           │                                 
│    Time offset:     -100926684.061        │                                
│    Grid Square:     QF22nb                │                                 
└───────────────────────────────────────────┘

ntp 및 gps에 대한 옵션은 다음과 같습니다.

# ps | grep gps
  149 root     /usr/sbin/gpsd -n -P /var/run/gpsd.pid /dev/ttyS1    
# ps | grep ntp
11952 root     /usr/sbin/ntpd -g

올바른 방향으로 나를 가리킬 수있는 조언에 감사드립니다.

답변1

나는 같은 문제가 있었고 SHM flag1이 범인이었습니다. 명확하게 하기 위해 이것이 제가 해결한 방법입니다(ntp.conf에서 이러한 변경 수행).

server 127.127.28.0 
fudge  127.127.28.0 time1 0.183 flag1 1 refid GPS
server 127.127.28.2 prefer
fudge  127.127.28.2 flag1 1 refid PPS

관련 정보