ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

测试双频GNSS定位导航模块

2022-02-09 19:30:00  阅读:262  来源: 互联网

标签:00 GNSS GNRMC 定位导航 090222 模块 双频 2.1 GPS


简 介: 初步测试了一款国内GNSS导航模块的性能。通过指令配置使得GPS可以输出10Hz的数据。并对接收到的数据进行了初步的统计分析。

关键词 GNSSGPS精度

GNSS定位GPS 目 录
Contents
基本特性 输出数据格式 测试GNSS 测试方法 配置GPS 测试结果 测试总结

 

§01 GNSS定位GPS


  边有来自于 TB LQ的双频GNSS定位GPS 模块。现在(2022-02-09)准备对其进行测试。

1.1 基本特性

1.1.1 工作电压和外部结构

  • 供电电压:+5V
  • 波特率:115200, 相关的波特率和PPS参数可以通过Satrack上位机设置和保存。

▲ 图1.1.1 GPS连接关系

▲ 图1.1.1 GPS连接关系

1.1.2 模块组成

  • 模块一套(模块+排针+天线+连接线),物流发送;
  • 使用手册一份(pdf版);
  • 配套测试程序一份(3277版);
  • 视频教程一份(龙邱B站 https://www.bilibili.com/video/BV1pF411p7kC/ )。

▲ 图1.1.2 GPS的组成

▲ 图1.1.2 GPS的组成

1.1.3 模块特性

▲ 图1.1.3 模块特性

▲ 图1.1.3 模块特性

1.2 输出数据格式

▲ 图1.2.1 数据组成

▲ 图1.2.1 数据组成

▲ 图1.2.2 数据的开始

▲ 图1.2.2 数据的开始

 

§02 试GNSS


2.1 测试方法

  利用ESP32-S模块转接板设计与实现测量GPS的输出数据。

▲ 图2.1.1  利用ESP32测试GPS

▲ 图2.1.1 利用ESP32测试GPS

2.1.1 测试电路板

▲ 图2.1.2  ESP32-S转接板的定义接口

▲ 图2.1.2 ESP32-S转接板的定义接口

2.1.2 使用示波器观察GPS的TX

▲ 图2.1.3 观察GPS的TX波形

▲ 图2.1.3 观察GPS的TX波形

2.1.3 问题

  将GPSDETX连接到ESP32的RX端口,ESP32退出了运行过程。

2.1.4 更换接收模式

  利用原来应用于开发MEGA单片机的下载接口模块,来接收GPS发送的字符。

▲ 图2.1.4 利用MEGA328下载模块

▲ 图2.1.4 利用MEGA328下载模块

(1)管脚定义

  下面是对应的MEGA32的接口定义,可以看到上面下载UART模块的功能定义:

UART下载管脚定义:
Pin1:+5V
Pin2:RXD,注:与单片机的TXD的交叉连接。
Pin3:TXD
Pin4:DTS
PIn5:GND

▲ 图2.1.5 单片机接口定义

▲ 图2.1.5 单片机接口定义

(2)接收结果

  打开PC中的COM1,可以接收到从GPS的发送的信息。

▲ 图2.1.6  接收到的数据文本

▲ 图2.1.6 接收到的数据文本

2.2 配置GPS

  由于需要发送十六进制的配置命令,通过MEGA8下载程序界面进行通信。

▲ 图2.2.1 MEGA328下载程序界面

▲ 图2.2.1 MEGA328下载程序界面

2.2.1 配置命令

  • 关闭GGA: F1 D9 06 01 03 00 F0 00 00 FA 0F
  • 关闭GSA: F1 D9 06 01 03 00 F0 02 00 FC 13
  • 关闭GSV: F1 D9 06 01 03 00 F0 04 00 FE 17
  • 关闭TXT: F1 D9 06 01 03 00 F0 20 00 1A 4F
  • 切换为10H组: F1 D9 06 42 14 00 00 0A 38 00 64 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 24
  • 保存设置: F1 D9 06 09 08 00 00 00 00 00 2F 00 00 00 46 B7

(1)GPS常用命令

▲ 图2.2.2 GPS 常用命令

▲ 图2.2.2 GPS 常用命令

  上面的关闭命令顺序可以交换顺序。后面的保存设置一定在断电重启之前执行完毕。

2.2.2 设置后的结果

  执行完毕之后,模块断电重启之后便可以接收到来自于GPS模块的每秒10个数据。

▲ 图2.2.3  设置后可以获得10Hz的数据

▲ 图2.2.3 设置后可以获得10Hz的数据

2.3 测试结果

  将GPS摆放在靠近办公室的窗口,此时GPS便可以接收到外部卫星信号,输出对应的接收数据。

2.3.1 秒脉冲信号

  一旦GPS接收到信号之后,在模块的第五管脚便输出秒脉冲信号。
▲ 图2.3.1 GPS输出的秒信号

▲ 图2.3.1 GPS输出的秒信号

2.3.2 接收到的数据

▲ 图2.3.2  GPS 发送的文本数据

▲ 图2.3.2 GPS 发送的文本数据

'$GNRMC,111333.700,A,4000.03218,N,11619.64045,E,0.000,26.91,090222,,,A*73', '$GNRMC,111333.800,A,4000.03218,N,11619.64044,E,0.000,26.91,090222,,,A*7D', '$GNRMC,111333.900,A,4000.03218,N,11619.64044,E,0.000,26.91,090222,,,A*7C', '$GNRMC,111334.000,A,4000.03219,N,11619.64044,E,0.207,89.88,090222,,,A*7B', '$GNRMC,111334.100,A,4000.03219,N,11619.64045,E,0.245,117.91,090222,,,A*43', '$GNRMC,111334.200,A,4000.03218,N,11619.64045,E,0.000,117.91,090222,,,A*42', '$GNRMC,111334.300,A,4000.03219,N,11619.64045,E,0.245,287.68,090222,,,A*4D', '$GNRMC,111334.400,A,4000.03219,N,11619.64044,E,0.263,267.46,090222,,,A*4D', '$GNRMC,111334.500,A,4000.03219,N,11619.64043,E,0.210,4.74,090222,,,A*49', '$GNRMC,111334.600,A,4000.03219,N,11619.64043,E,0.301,175.56,090222,,,A*4C', '$GNRMC,111334.700,A,4000.03219,N,11619.64043,E,0.000,175.56,090222,,,A*4F', '$GNRMC,111334.800,A,4000.03219,N,11619.64042,E,0.288,89.54,090222,,,A*73', '$GNRMC,111334.900,A,4000.03219,N,11619.64043,E,0.000,89.54,090222,,,A*71', '$GNRMC,111335.000,A,4000.03219,N,11619.64043,E,0.000,89.54,090222,,,A*79', '$GNRMC,111335.100,A,4000.03219,N,11619.64043,E,0.000,89.54,090222,,,A*78', '$GNRMC,111335.200,A,4000.03219,N,11619.64043,E,0.270,91.36,090222,,,A*73', 

2.3.3 数值统计

  统计接收到的坐标的平均值和标准方差。

from headm import *
from tsmodule.tsstm32       import *

stm32cmd('COPY')
allstr = clipboard.paste().split('\n')

longdim = []
latidim = []

for s in allstr:
    if len(s) == 0: continue
    if s.find('$') < 0: continue

    ss = s.split(',')
    longdim.append(float(ss[3]))
    latidim.append(float(ss[5]))

printf(len(longdim))
printf(mean(longdim), std(longdim))
printf(mean(latidim), std(latidim))
752
4000.0308547074465
0.00011173876995471463
11619.632931156917
0.0008331489016910691
1695
4000.0332160707962
0.00029362351378679037
11619.635073044246
0.0006330272316004214
2100
4000.033260909523
0.00028110730268333305
11619.634760957144
0.0008624486668393132
3070
4000.0333911465805
0.00032372987293646023
11619.634157592835
0.001206152808081727

 

试总结 ※


  步测试了一款国内GNSS导航模块的性能。通过指令配置使得GPS可以输出10Hz的数据。并对接收到的数据进行了初步的统计分析。


■ 相关文献链接:

● 相关图表链接:

#!/usr/local/bin/python
# -*- coding: gbk -*-
#============================================================
# TEST2.PY                     -- by Dr. ZhuoQing 2022-02-09
#
# Note:
#============================================================

from headm import *
from tsmodule.tsstm32       import *

stm32cmd('COPY')
allstr = clipboard.paste().split('\n')

#printf(allstr)

longdim = []
latidim = []

for s in allstr:
    if len(s) == 0: continue
    if s.find('$') < 0: continue

    ss = s.split(',')
#    printf(ss)
    longdim.append(float(ss[3]))
    latidim.append(float(ss[5]))
#    break


printf(len(longdim))
printf(mean(longdim), std(longdim))
printf(mean(latidim), std(latidim))



#------------------------------------------------------------
#        END OF FILE : TEST2.PY
#============================================================

标签:00,GNSS,GNRMC,定位导航,090222,模块,双频,2.1,GPS
来源: https://blog.csdn.net/zhuoqingjoking97298/article/details/122846940

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有