GPS 센서를 사용하여 위치 정보 획득 및 시간 보정하기
5255 단어 RaspberryPi크로니gpsdGPS
운영 환경
배선 연결
준비한 GPS 센서는 UART 연결용이지만 Raspberry Pi 이외의 기기에도 적용하기 위해 변환기를 사용하여 USB 연결
연결 확인
USB 변환기가 인식되면 /dev/ttyUSB0
가 생성됩니다.
통신 내용 읽기 GPS 센서가 연결되어 있는지 확인
cat /dev/ttyUSB0
명령을 실행하면 다음과 같은 NMEA 형식 응답이 있습니다.
참고 이미 gpsd를 설정하고 시작한 경우 Device or resource busy
가 표시됩니다.
GNGLL,3422.1331,N,13518.0431,E,141613.000,A,A*48
GNGSA,A,3,17,28,04,14,09,03,19,06,22,,,,1.19,0.86,0.82*18
...
gpsd를 사용하여 위치 정보 얻기
위치 정보를 받는 메커니즘
GPS 센서로부터 NMEA 형식의 신호를 수신한 gpsd 는, gpsd_json 형식 로 변환한 위치 정보 리포트를 TCP/IP 통신(포트 2947)으로 전달한다. 보고서의 내용은 cgps와 같은 gpsd 클라이언트를 사용하여 쉽게 볼 수 있습니다.
gpsd, gpsd 클라이언트 설치
sudo apt install gpsd gpsd-clients
gpsd 설정
/etc/default/gpsd
편집
/etc/default/gpsd# Default settings for the gpsd init script and the hotplug wrapper.
# Start the gpsd daemon automatically at boot time
START_DAEMON="true"
# Use USB hotplugging to add new USB devices automatically to the daemon
USBAUTO="true"
# Devices gpsd should collect to at boot time.
# They need to be read/writeable, either by user gpsd or the group dialout.
DEVICES="/dev/ttyUSB0"
# Other options you want to pass to gpsd
GPSD_OPTIONS="-F /var/run/gpsd.sock -b -n -r"
옵션의 의미는 man gpsd
에서 확인할 수 있습니다.
-F 소켓 파일 경로
-b 장치 보호 모드 (GPS 센서에 설정 쓰기 금지)
-n 요청이 올 때까지 센서 연결을 대기하는 기능을 비활성화합니다.
-r 보정이 완료되기 전에도 GPS 시간을 사용합니다. RTC 내장 센서라면 보정 완료 전에도 유효한 시각을 얻을 수 있다
gpsd 재부팅
sudo systemctl restart gpsd.service
위치 정보 얻기
cgps 및 gpsmon과 같은 gpsd 클라이언트를 사용하여 위치 정보 얻기
cgps -s
이 도서관를 사용하여 파이썬에서 위치 정보를 얻을 수도 있습니다.
chrony를 사용하여 위치 정보 얻기
chrony란?
ntpd와 다른 NTP 구현. 호스트 머신이 자주 셧다운이나 네트워크 단절 상태가 되는 케이스로 안정적으로 동작하는 것이 특징 [공식]. CentOS 및 Red Hat에서는 ntpd로 바뀌고 기본값이므로 안정성이 높습니다.
chorny는 gpsd가 shared memory에 쓴 정보를 읽고 시간을 수정합니다.
chrnoy 설정
Raspberry Pi OS에서는 기본적으로 systemd-timesyncd
가 활성화되어 있으므로 비활성화합니다.
sudo systemctl stop systemd-timesyncd
sudo systemctl disable systemd-timesyncd
chrony 설치
sudo apt install chrony
/etc/chrony/chrony.conf
편집
/etc/chrony/chrony.conf# ネットワーク上の時刻サーバとの同期させない場合はコメントアウト
# pool 2.debian.pool.ntp.org iburst
# shared memoryから読み取る設定を追加
refclock SHM 0 refid GPS precision 1e-1
chrony 재부팅
sudo systemctl restart chrony.service
chrony sources
명령으로 상태를 확인할 수 있습니다.
잠시 방치하고 GPS 왼쪽에 *가 표시되면 시간 동기화 완료
210 Number of sources = 1
MS Name/IP address Stratum Poll Reach LastRx Last sample
===============================================================================
#* GPS 0 4 377 20 +18ms[ +32ms] +/- 100ms
참고
htp ///만두 s. 어쩌면. 코 m/만파게 s/후카나 l/만 8/gpsd. 8. HTML
htps : // 만파게 s. 어쩌면. 이 m/만파게 s/p 레세세/만 5/gpsd_j 그래. 5. HTML
htps : // gpsd. 기 t b. 이오 / gpsd / gpsd - 치메 - r ゔ ぃ 세 - 호와. HTML#_Fuee G_ch 로 ny_f m_gpsd
htps : // gpsd. 기 t b. 이오 / gpsd / c ぃ 엔 t 호 w와. HTML#_인 t로즈 c치온
Reference
이 문제에 관하여(GPS 센서를 사용하여 위치 정보 획득 및 시간 보정하기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/ktr03/items/ee9e9b1f194c2398479c
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
USB 변환기가 인식되면
/dev/ttyUSB0
가 생성됩니다.통신 내용 읽기 GPS 센서가 연결되어 있는지 확인
cat /dev/ttyUSB0
명령을 실행하면 다음과 같은 NMEA 형식 응답이 있습니다.
참고 이미 gpsd를 설정하고 시작한 경우
Device or resource busy
가 표시됩니다.GNGLL,3422.1331,N,13518.0431,E,141613.000,A,A*48
GNGSA,A,3,17,28,04,14,09,03,19,06,22,,,,1.19,0.86,0.82*18
...
gpsd를 사용하여 위치 정보 얻기
위치 정보를 받는 메커니즘
GPS 센서로부터 NMEA 형식의 신호를 수신한 gpsd 는, gpsd_json 형식 로 변환한 위치 정보 리포트를 TCP/IP 통신(포트 2947)으로 전달한다. 보고서의 내용은 cgps와 같은 gpsd 클라이언트를 사용하여 쉽게 볼 수 있습니다.
gpsd, gpsd 클라이언트 설치
sudo apt install gpsd gpsd-clients
gpsd 설정
/etc/default/gpsd
편집
/etc/default/gpsd# Default settings for the gpsd init script and the hotplug wrapper.
# Start the gpsd daemon automatically at boot time
START_DAEMON="true"
# Use USB hotplugging to add new USB devices automatically to the daemon
USBAUTO="true"
# Devices gpsd should collect to at boot time.
# They need to be read/writeable, either by user gpsd or the group dialout.
DEVICES="/dev/ttyUSB0"
# Other options you want to pass to gpsd
GPSD_OPTIONS="-F /var/run/gpsd.sock -b -n -r"
옵션의 의미는 man gpsd
에서 확인할 수 있습니다.
-F 소켓 파일 경로
-b 장치 보호 모드 (GPS 센서에 설정 쓰기 금지)
-n 요청이 올 때까지 센서 연결을 대기하는 기능을 비활성화합니다.
-r 보정이 완료되기 전에도 GPS 시간을 사용합니다. RTC 내장 센서라면 보정 완료 전에도 유효한 시각을 얻을 수 있다
gpsd 재부팅
sudo systemctl restart gpsd.service
위치 정보 얻기
cgps 및 gpsmon과 같은 gpsd 클라이언트를 사용하여 위치 정보 얻기
cgps -s
이 도서관를 사용하여 파이썬에서 위치 정보를 얻을 수도 있습니다.
chrony를 사용하여 위치 정보 얻기
chrony란?
ntpd와 다른 NTP 구현. 호스트 머신이 자주 셧다운이나 네트워크 단절 상태가 되는 케이스로 안정적으로 동작하는 것이 특징 [공식]. CentOS 및 Red Hat에서는 ntpd로 바뀌고 기본값이므로 안정성이 높습니다.
chorny는 gpsd가 shared memory에 쓴 정보를 읽고 시간을 수정합니다.
chrnoy 설정
Raspberry Pi OS에서는 기본적으로 systemd-timesyncd
가 활성화되어 있으므로 비활성화합니다.
sudo systemctl stop systemd-timesyncd
sudo systemctl disable systemd-timesyncd
chrony 설치
sudo apt install chrony
/etc/chrony/chrony.conf
편집
/etc/chrony/chrony.conf# ネットワーク上の時刻サーバとの同期させない場合はコメントアウト
# pool 2.debian.pool.ntp.org iburst
# shared memoryから読み取る設定を追加
refclock SHM 0 refid GPS precision 1e-1
chrony 재부팅
sudo systemctl restart chrony.service
chrony sources
명령으로 상태를 확인할 수 있습니다.
잠시 방치하고 GPS 왼쪽에 *가 표시되면 시간 동기화 완료
210 Number of sources = 1
MS Name/IP address Stratum Poll Reach LastRx Last sample
===============================================================================
#* GPS 0 4 377 20 +18ms[ +32ms] +/- 100ms
참고
htp ///만두 s. 어쩌면. 코 m/만파게 s/후카나 l/만 8/gpsd. 8. HTML
htps : // 만파게 s. 어쩌면. 이 m/만파게 s/p 레세세/만 5/gpsd_j 그래. 5. HTML
htps : // gpsd. 기 t b. 이오 / gpsd / gpsd - 치메 - r ゔ ぃ 세 - 호와. HTML#_Fuee G_ch 로 ny_f m_gpsd
htps : // gpsd. 기 t b. 이오 / gpsd / c ぃ 엔 t 호 w와. HTML#_인 t로즈 c치온
Reference
이 문제에 관하여(GPS 센서를 사용하여 위치 정보 획득 및 시간 보정하기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/ktr03/items/ee9e9b1f194c2398479c
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
sudo apt install gpsd gpsd-clients
# Default settings for the gpsd init script and the hotplug wrapper.
# Start the gpsd daemon automatically at boot time
START_DAEMON="true"
# Use USB hotplugging to add new USB devices automatically to the daemon
USBAUTO="true"
# Devices gpsd should collect to at boot time.
# They need to be read/writeable, either by user gpsd or the group dialout.
DEVICES="/dev/ttyUSB0"
# Other options you want to pass to gpsd
GPSD_OPTIONS="-F /var/run/gpsd.sock -b -n -r"
sudo systemctl restart gpsd.service
cgps -s
chrony란?
ntpd와 다른 NTP 구현. 호스트 머신이 자주 셧다운이나 네트워크 단절 상태가 되는 케이스로 안정적으로 동작하는 것이 특징 [공식]. CentOS 및 Red Hat에서는 ntpd로 바뀌고 기본값이므로 안정성이 높습니다.
chorny는 gpsd가 shared memory에 쓴 정보를 읽고 시간을 수정합니다.
chrnoy 설정
Raspberry Pi OS에서는 기본적으로
systemd-timesyncd
가 활성화되어 있으므로 비활성화합니다.sudo systemctl stop systemd-timesyncd
sudo systemctl disable systemd-timesyncd
chrony 설치
sudo apt install chrony
/etc/chrony/chrony.conf
편집/etc/chrony/chrony.conf
# ネットワーク上の時刻サーバとの同期させない場合はコメントアウト
# pool 2.debian.pool.ntp.org iburst
# shared memoryから読み取る設定を追加
refclock SHM 0 refid GPS precision 1e-1
chrony 재부팅
sudo systemctl restart chrony.service
chrony sources
명령으로 상태를 확인할 수 있습니다.잠시 방치하고 GPS 왼쪽에 *가 표시되면 시간 동기화 완료
210 Number of sources = 1
MS Name/IP address Stratum Poll Reach LastRx Last sample
===============================================================================
#* GPS 0 4 377 20 +18ms[ +32ms] +/- 100ms
참고
htp ///만두 s. 어쩌면. 코 m/만파게 s/후카나 l/만 8/gpsd. 8. HTML
htps : // 만파게 s. 어쩌면. 이 m/만파게 s/p 레세세/만 5/gpsd_j 그래. 5. HTML
htps : // gpsd. 기 t b. 이오 / gpsd / gpsd - 치메 - r ゔ ぃ 세 - 호와. HTML#_Fuee G_ch 로 ny_f m_gpsd
htps : // gpsd. 기 t b. 이오 / gpsd / c ぃ 엔 t 호 w와. HTML#_인 t로즈 c치온
Reference
이 문제에 관하여(GPS 센서를 사용하여 위치 정보 획득 및 시간 보정하기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/ktr03/items/ee9e9b1f194c2398479c
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(GPS 센서를 사용하여 위치 정보 획득 및 시간 보정하기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/ktr03/items/ee9e9b1f194c2398479c텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)