プロが教えるわが家の防犯対策術!

初めまして
ラズパイ4Bを利用して無線機の操作状態読み出し
GPSセンサーを用いて測位、PCとつないでこれらのデータのやりとり
やコントロールプログラムを作成しております。
ネットの情報を参考にしているのですがなぜかうまくいきませんので
質問させていただきます
GPSのデータから文字列を切り出そうとしますがうまくいきません

環境 ラズパイ4B VERSION 10.11 フルパッケージ
開発言語 python3.7.3

ft991main.pyからgps.pyの下記の関数を呼び出してます

def gps_clicked():
global gps
global gps_loopFlg
global gps_EnableFlg
if gps_EnableFlg == 0:
try:
port = '/dev/ttyACM0' #Linux USB変換ポート
baudrate =9600 # ボーレート指定
gpsRcv = serial.Serial(port, baudrate, timeout=10)
gpsRcv.readline()
gps_EnableFlg = 1 #gps読み出しのフラッグ
time.sleep(0.3)
print(gpsRcv)          #ここでは読めてます

while True:
gpsRcv_UTF = gpsRcv.readline().decode('utf-8')#utf-8に変換
print(gpsRcv_UTF)              #ここは大丈夫
sentou = gpsRcv_UTF.find('$GPRMC') # '$GPRMC'があるインデックスを取得(前方検索)
if( sentou != -1 ):
owari = gpsRcv_UTF.find('\r\n;',sentou) # '$GPRMC'の文字列の最後を取得
print('UTFsentou')
print(sentou) #先頭部開始位置0が取得できるので大丈夫そうです
print('UTFowari')
print(owari) #終了位置61が取得できるので大丈夫そうです
gpsRcv[sentou:owari]  #まったく切り出せてません
gpsRcv[0:61]      #試しに直接位置を指定してもまったく切り出せてません


~~~~~~~~~~
以上よろしくお願いいたします。

A 回答 (1件)

rubyじゃないけど、一応。


>gpsRcv[sentou:owari]
gpsRcv_UTF[sentou:owari]
――では。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
完全に見逃してました
修正しましたらできました
お恥ずかしい限りです

お礼日時:2021/11/18 21:53

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!