GY-NEO6MV2 GPS模块测试

2024-03-11 20:20
文章标签 模块 测试 gps gy neo6mv2

本文主要是介绍GY-NEO6MV2 GPS模块测试,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

GY-NEO6MV2 GPS模块测试


  • 📓模块资料:GY-NEO6MV2
https://pan.baidu.com/s/17ihqLzXytrR2K2LmumvdKA

在这里插入图片描述

  • 🍁原理图(资料中有)
    在这里插入图片描述

📑基本参数信息

  • 🌿3V-5V供电通用。
  • 🌿默认波特率:9600

🛠基本测试条件

  • 🌿电脑上位机软件:串口调试助手(https://www.wch.cn/downloads/COMTransmit_ZIP.html
    推荐使用野火多功能调试助手上位机,带GPS调试功能界面:
    在这里插入图片描述

  • 🔧USB转串口工具:用最常见的便宜的CH340方案的USB转TTL

  • 📌官方调试和参数配置工具:u-centerhttps://www.u-blox.com/zh/product/u-center
    在这里插入图片描述

  • 🔖 官方工具可进行波特率调整。以及查看接收数据。
  • 🌿可以使用中科微的上位机软件GnssToolKit3(下载地址:http://www.hzzkw.com/xiazai/)进行参看,但是不能进行对GPS模块配置设置(毕竟这是u-blox的产品)。
    在这里插入图片描述

🛠通过u-center软件修改默认波特率

在这里插入图片描述

  • u-center设置好端口和默认波特率9600,并进行连接。
    在这里插入图片描述
    在这里插入图片描述

  • 🔧打开配置选项
    在这里插入图片描述

  • 🔨 选择PRT(ports),在右侧选择要修改的波特率,然后点击下面的Send按钮。
    在这里插入图片描述

  • ✨到这一步,仅仅设置的是当前波特率,还需要将这个参数保存到模块中的EEPROM中。
  • 🔨保存当前配置到EEPROM中:
    在这里插入图片描述

  • 👉🏻保存后,断电重启,设置新的波特率进行通讯。
    在这里插入图片描述

📖接线方式和上位机配置

  • 🔨接线方式
CH340  ---- GY-NEO6MV2
TXD	-----  RXD
RXD ------  TXD
5V/3.3V ----- VCC
  • 🏳‍🌈5V信号通讯时,最好RX中间串一个1K电阻,有条件RX线上创建一个分压电路:
    在这里插入图片描述

  • 🔧打开串口调试助手,设置波特率:9600
    在这里插入图片描述

📋数据解析

  • 📜接收的原始数据:
$GPGGA,120559.00,2750.91662,N,11342.52100,E,1,08,1.22,69.5,M,-9.9,M,,*71
$GPGSA,A,3,10,28,25,32,23,31,21,02,,,,,1.92,1.22,1.49*0A
$GPGSV,4,1,13,01,05,306,,02,06,291,11,10,63,180,19,12,19,044,*7F
$GPGSV,4,2,13,21,08,284,15,22,46,329,29,23,27,159,13,25,54,071,20*74
$GPGSV,4,3,13,26,20,202,,28,58,294,19,29,05,123,,31,34,259,21*7C
$GPGSV,4,4,13,32,58,360,19*4A
$GPGLL,2750.91662,N,11342.52100,E,120559.00,A,A*6A
$GPRMC,120600.00,A,2750.91634,N,11342.52052,E,0.691,,030823,,,A*7D
$GPVTG,,T,,M,0.691,N,1.280,K,A*26

GPS数据遵循NMEA-0183协议,该数据标准是由NMEA(National Marine Electronics Association,美国国家海事电子协会)于1983年制定的。统一标准格式NMEA-0183输出采用ASCII 码,其串行通信的参数为:波特率=4800bps,数据位=8bit,开始位=1bit,停止位=1bit,无奇偶校验。

数据传输以“语句”的方式进行,每个语句均以“$”开头,然后是两个字母的“识别符”和三个字母的“语句名”,接着就是以逗号分割的数据体,语句末尾为校验和,整条语句以回车换行符结束。

  • NMEA-0183的数据信息有十几种,这些信息的作用分别是:
    $GPGGA:输出GPS的定位信息;
    $GPGLL:输出大地坐标信息;
    $GPZDA:输出UTC时间信息;
    $GPGSV:输出可见的卫星信息;
    $GPGST:输出定位标准差信息;
    $GPGSA:输出卫星DOP值信息;
    $GPALM:输出卫星星历信息;
    $GPRMC:输出GPS推荐的最短数据信息等。
  1. $GPRMC语句
    (Recommended Minimum Specific GPS/TRANSIT Data-RMC,推荐定位信息1次/1秒)

对于一般的GPS动态定位应用,GPRMC语句完全满足要求。该语句中包括经纬度、速度、时间和磁偏角等字段,这些数据为导航定位应用提供了充分的信息。下表详细说明GPRMC语句中的各个字段:

$GPRMC<1><2><3><4><5><6><7><8><9><10>,,<12>

字段 $GPRMC语句意义——取值范围
<1> UTC时间:hhmmss.ss——000000.00~235959.99
<2> 状态,有效性 ——A表示有效;V表示无效
<3> 纬度格式:ddmm.mmmm——0000.00000~8959.9999 (标准的度分格式)
<4> 南北半球——N北纬;S南纬
<5> 经度格式:dddmm.mmmm——00000.0000~17959.9999(标准的度分格式)
<6> 东西半球——E表示东经;W表示西经
<7> 地面速度——000.00~999.999
<8> 速度方向——000.00~359.99
<9> 日期格式,月日年——010100~123199
<10> 磁偏角,单位:度——00.00~99.99
磁偏角方向——E表示东;W表示西
<12> 模式指示及校验和—— A=自主定位,D=差分,E=估算,N=数据无效

例如:$GPRMC,074529.82,A,2429.6717,N,11804.6973,E,12.623,32.122,010806,,W,A*08

  1. $GPGGA语句
    (Global Positioning System Fix Data-GGA,GPS定位信息, 输出1次/1秒)

GPS定位主要数据,该语句中包括经纬度、质量因子、HDOP、高程、基准站号等字段。下表详细说明GPGGA语句中的各个字段:

$GPGGA,<1><2><3><4><5><6><7><8><9><10>,,<12>,<14>

字段 $GPGGA语句意义——取值范围
<1> UTC时间:hhmmss.ss——000000.00~235959.99
<2> 纬度,格式:ddmm.mmmm ——0000.00000~8959.9999(标准的度分格式)
<3> 南北半球——N北纬;S南纬
<4> 经度格式:dddmm.mmmm ——00000.0000~17959.9999(标准的度分格式)
<5> 东西半球——E表示东经;W表示西经
<6> 质量因子——0=未定位,1=GPS单点定位固定解,2=差分定位,3=PPS解;4=RTK固定解;5=RTK浮点解;6=估计值;7=手工输入模式;8=模拟模式;
<7> 应用解算位置的卫星数——00~12
<8> HDOP,水平图形强度因子——0.500~99.000 ;大于6不可用
<9> 天线高程(海平面)——-9999.9~99999.9
<10> 线线高程单位(m) ——m
大地水准面起伏——地球椭球面相对大地水准面的高度
<12> 大地水准面起伏单位(m) ——m
<13> 差分GPS数据期——差分时间(从最近一次接收到差分信号开始的秒数,如果不是差分定位将为空),不使用DGPS时为空
<14> 基准站号——0000~1023;不使用DGPS时为空.

  1. $GPGSV语句
    (GPS Satellites in View-GSV,可见卫星信息,1次/5秒)

GPS可见星的方位角、俯仰角、信噪比等每条语句最多包括四颗卫星的信息,每颗卫星的信息有四个数据项,即:(4)-卫星号,(5)-仰角,(6)-方位角,(7)-信噪比

$GPGSV,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<12>,<13>,<14>,<15>,<16>,<17>,<18>,<19>

字段 $GPGSV语句意义——取值范围
<1> 总的GSV语句电文数——0~12
<2> 当前GSV语句号
<3> 可视卫星总数——0~32
<4> 卫星号——1~32
<5> 仰角——00~90
<6> 方位角——000~359
<7> 信噪比——00~99dB无表未接收到讯号
<8> 卫星号——1~32
<9> 仰角——00~90
<10> 方位角——000~359
信噪比——00~99dB无表未接收到讯号
<12> 卫星号——1~32
<13> 仰角——00~90
<14> 方位角——000~359
<15> 信噪比——00~99dB 无表示未接收到讯号
<16> 卫星号——1~32
<17> 仰角——00~90
<18> 方位角——000~359
<19> 效验和,格式:*效验和——检查位

  1. $ G P V T G 语句 ( T r a c k M a d e G o o d a n d G r o u n d S p e e d - V T G ,地面速度信息)格式: ‘ GPVTG语句 (Track Made Good and Ground Speed-VTG,地面速度信息) 格式:` GPVTG语句(TrackMadeGoodandGroundSpeedVTG,地面速度信息)格式:GPVTG,<1>,T,<2>,M,<3>,N,<4>,K,<5>*hh`

字段 $GPVTG语句意义——取值范围
<1> 以真北为参考基准的地面航向——000.000~359.999
<2> 以磁北为参考基准的地面航向——000.000~359.999
<3> 地面速率——000.000~999.999节
<4> 地面速率——0000.0~1851.8公里/小时
<5> 模式指示——A=自主定位,D=差分,E=估算,N=数据无效(仅NMEA0183 3.00版本输出)
<6> hh 校检位

  1. $GPGSA语句
    (GPS DOP and Active Satellites-GSA,当前卫星信息,1次/1秒)

GSA : GNSS 的当前卫星和精度因子,包括可见卫星PRN号,以及PDOP、HDOP、VDOP。如:
<1> 模式 ——M = 手动, A = 自动。
<2> 定位类型——1 = 未定位, 2 = 二维定位, 3 = 三维定位。
<3> PRN 数字——01 至 32 表天空使用中的卫星编号,最多可接收12颗卫星信息。正在用于解算位置的卫星号(01~32,前面的0也将被传输)。
<4> PDOP位置精度因子——0.5~99.9
<5> HDOP水平精度因子——0.5~99.9
<6> VDOP垂直精度因子——0.5~99.9
<7> Checksum.(检查位).

$GPGSA,<1>,<2>,<3>,<3>,<3>,<3>,<3>,<4>,<5>,<6>,<7>
$GPGSA,A,3,19,11,03,23,27,13,16,3.43,1.67,2.99*0E

  1. $GPGLL语句
    (输出大地坐标信息)
    $GPGLL,<1>,<2>,<3>,<4>,<5>,<6>,<7>61
    字段 $GPGLL语句意义——取值范围
    <1> 纬度:ddmm.mmmmm——0000.00000~8959.9999
    <2> 南纬或北纬——北纬N,S南纬
    <3> 经度:dddmm.mmmmm——0000.00000~17959.99999
    <4> 东、西经 ——东经E,西经W
    <5> UTC时间——hh:mm:ss
    <6> 数据状态——A有效,V无效
    $GPGLL,2431.25310,N,11806.15429,E,081401.00,A,A
    61

  2. $GPZDA 语句
    (输出UTC时间和日期信息)

$GPZDA, <1>,<2>,<3>,<4>,<5>*hh

字段 $GPZDA语句意义——取值范围
<1> 时间:hhmmss.ss——0000000.00~235959.99
<2> 日——00~31
<3> 月——00~12
<4> 年——0000~9999
<5> 地方时与世界时之差
<6> 检校位 hh——
$GPZDA,081401.00,14,09,2006,00,00*62

  1. G P G S T 语句( G P S 伪距噪声统计 , 包括了三维坐标的标准偏差信息)字段——示例——说明 S e n t e n c e I D —— GPGST 语句 (GPS 伪距噪声统计,包括了三维坐标的标准偏差信息) 字段——示例——说明 Sentence ID —— GPGST语句(GPS伪距噪声统计,包括了三维坐标的标准偏差信息)字段——示例——说明SentenceID——GPGST
    UTC Time——024603.00——UTC time of associated GGA fix
    RMS deviation——3.2——Total RMS standard deviation of ranges inputs to the navigation solution
    Semi-major deviation——6.6——Standard deviation (meters) of semi-major axis of error ellipse
    Semi-minor deviation——4.7——Standard deviation (meters) of semi-minor axis of error ellipse
    Semi-major orientation——47.3——Orientation of semi-major axis of error ellipse (true north degrees)
    Latitude error deviation——5.8——Standard deviation (meters) of latitude error
    Longitude error deviation——5.6——Standard deviation (meters) of longitude error
    Altitude error deviation——22.0——Standard deviation (meters) of latitude error
    Checksum—— 58
    $GPGST,024603.00,3.2,6.6,4.7,47.3,5.8,5.6,22.0
    58

  2. $GPCN0语句

各颗用于解算的卫星信噪比:
$GPCN0,30,40,35,26,24,36,31,38
二、 输出时间说明:
 GPGGA(1次/1秒)
 GPGSA(1次/1秒)
 GPGSV(1次/5秒)
 GPRMC(1次/1秒)
 另可选用GLL,VTG或SiRF二进制格式.

📝Arduino 程序

  • 👉🏻资料中有,另外包含51,stm32程序都有
/*GY-GPS-6MV2 GPS模块 (带有源陶瓷天线)
*/#include <SoftwareSerial.h>SoftwareSerial ss(4, 3);//rx,txvoid setup()
{Serial.begin(9600);ss.begin(9600);
}void loop()
{while (ss.available() > 0){ byte gpsData = ss.read();Serial.write(gpsData);}
}
  • 📜串口打印信息:
    在这里插入图片描述

这篇关于GY-NEO6MV2 GPS模块测试的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/798961

相关文章

性能测试介绍

性能测试是一种测试方法,旨在评估系统、应用程序或组件在现实场景中的性能表现和可靠性。它通常用于衡量系统在不同负载条件下的响应时间、吞吐量、资源利用率、稳定性和可扩展性等关键指标。 为什么要进行性能测试 通过性能测试,可以确定系统是否能够满足预期的性能要求,找出性能瓶颈和潜在的问题,并进行优化和调整。 发现性能瓶颈:性能测试可以帮助发现系统的性能瓶颈,即系统在高负载或高并发情况下可能出现的问题

python: 多模块(.py)中全局变量的导入

文章目录 global关键字可变类型和不可变类型数据的内存地址单模块(单个py文件)的全局变量示例总结 多模块(多个py文件)的全局变量from x import x导入全局变量示例 import x导入全局变量示例 总结 global关键字 global 的作用范围是模块(.py)级别: 当你在一个模块(文件)中使用 global 声明变量时,这个变量只在该模块的全局命名空

字节面试 | 如何测试RocketMQ、RocketMQ?

字节面试:RocketMQ是怎么测试的呢? 答: 首先保证消息的消费正确、设计逆向用例,在验证消息内容为空等情况时的消费正确性; 推送大批量MQ,通过Admin控制台查看MQ消费的情况,是否出现消费假死、TPS是否正常等等问题。(上述都是临场发挥,但是RocketMQ真正的测试点,还真的需要探讨) 01 先了解RocketMQ 作为测试也是要简单了解RocketMQ。简单来说,就是一个分

深入探索协同过滤:从原理到推荐模块案例

文章目录 前言一、协同过滤1. 基于用户的协同过滤(UserCF)2. 基于物品的协同过滤(ItemCF)3. 相似度计算方法 二、相似度计算方法1. 欧氏距离2. 皮尔逊相关系数3. 杰卡德相似系数4. 余弦相似度 三、推荐模块案例1.基于文章的协同过滤推荐功能2.基于用户的协同过滤推荐功能 前言     在信息过载的时代,推荐系统成为连接用户与内容的桥梁。本文聚焦于

【测试】输入正确用户名和密码,点击登录没有响应的可能性原因

目录 一、前端问题 1. 界面交互问题 2. 输入数据校验问题 二、网络问题 1. 网络连接中断 2. 代理设置问题 三、后端问题 1. 服务器故障 2. 数据库问题 3. 权限问题: 四、其他问题 1. 缓存问题 2. 第三方服务问题 3. 配置问题 一、前端问题 1. 界面交互问题 登录按钮的点击事件未正确绑定,导致点击后无法触发登录操作。 页面可能存在

业务中14个需要进行A/B测试的时刻[信息图]

在本指南中,我们将全面了解有关 A/B测试 的所有内容。 我们将介绍不同类型的A/B测试,如何有效地规划和启动测试,如何评估测试是否成功,您应该关注哪些指标,多年来我们发现的常见错误等等。 什么是A/B测试? A/B测试(有时称为“分割测试”)是一种实验类型,其中您创建两种或多种内容变体——如登录页面、电子邮件或广告——并将它们显示给不同的受众群体,以查看哪一种效果最好。 本质上,A/B测

Jenkins构建Maven聚合工程,指定构建子模块

一、设置单独编译构建子模块 配置: 1、Root POM指向父pom.xml 2、Goals and options指定构建模块的参数: mvn -pl project1/project1-son -am clean package 单独构建project1-son项目以及它所依赖的其它项目。 说明: mvn clean package -pl 父级模块名/子模块名 -am参数

寻迹模块TCRT5000的应用原理和功能实现(基于STM32)

目录 概述 1 认识TCRT5000 1.1 模块介绍 1.2 电气特性 2 系统应用 2.1 系统架构 2.2 STM32Cube创建工程 3 功能实现 3.1 代码实现 3.2 源代码文件 4 功能测试 4.1 检测黑线状态 4.2 未检测黑线状态 概述 本文主要介绍TCRT5000模块的使用原理,包括该模块的硬件实现方式,电路实现原理,还使用STM32类

Verybot之OpenCV应用一:安装与图像采集测试

在Verybot上安装OpenCV是很简单的,只需要执行:         sudo apt-get update         sudo apt-get install libopencv-dev         sudo apt-get install python-opencv         下面就对安装好的OpenCV进行一下测试,编写一个通过USB摄像头采

BIRT 报表的自动化测试

来源:http://www.ibm.com/developerworks/cn/opensource/os-cn-ecl-birttest/如何为 BIRT 报表编写自动化测试用例 BIRT 是一项很受欢迎的报表制作工具,但目前对其的测试还是以人工测试为主。本文介绍了如何对 BIRT 报表进行自动化测试,以及在实际项目中的一些测试实践,从而提高了测试的效率和准确性 -------