RaspberryPi GPSプログラム(python)
RaspberryPiに接続したGPSモジュールからGPSデータ(タイムスタンプ・緯度・経度)を取得して繰り返し保存するプログラムを書きました。保存されたCSVファイルのタイムスタンプを見るとおよそ1秒に1回ごとに記録されています。1秒で5回は記録したいのですが、どのように実装すればよいですか?
#!/usr/bin/env python
# -*- coding: utf-8 -*-
#GPS Program
import serial
import pandas as pd
import sys
import os
args = sys.argv
data1= '$GPGGA'
data2= '$GPGLL'
data3= '$GPRMC'
s = serial.Serial('/dev/serial0', 9600, timeout=10)
s.readline()
while 1:
s = serial.Serial('/dev/serial0', 9600, timeout=10)
s.readline()
sentence = s.readline().decode('utf-8')
li = sentence.split(',')
# NMEAのGPGGAからUTC,緯度,経度を取得してCSVファイルに保存
if data1 in li[0]:
timeutc = li[1]
lat = li[2]
lon = li[4]
w = pd.DataFrame([[timeutc,lon,lat]])
w.to_csv(args[1], index=False, encoding="utf-8", mode='a', header=False)
# NMEAのGPGLLからUTC,緯度,経度を取得してCSVファイルに保存
if data2 in li[0]:
timeutc = li[5]
lat = li[1]
lon = li[3]
w = pd.DataFrame([[timeutc,lon,lat]])
w.to_csv(args[1], index=False, encoding="utf-8", mode='a', header=False)
# NMEAのGPRMCからUTC,緯度,経度を取得してCSVファイルに保存
if data3 in li[0]:
timeutc = li[1]
lat = li[3]
lon = li[5]
w = pd.DataFrame([[timeutc,lon,lat]])
w.to_csv(args[1], index=False, encoding="utf-8", mode='a', header=False)