0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

双频定位怎么用?看这篇——合宙Air551G开发板入门使用及基础知识普及

合宙LuatOS 2022-02-08 09:25 次阅读

焊板子、撸代码、写文章——LuatOS社群工程师们热火朝天的2022虎年春节写照。无论何时何处,心里总燃动着灵魂之舞,没有什么能阻挡真正的热爱!

今天特别带来乔帮主乔工关于合宙Air551G双频定位开发板的试用分享,一篇详实易懂的用心之作,尤其适合新上手的朋友们。

1

Air551G开发板试用分享


一、开箱

合宙挺给力,节前就拿到了这块Air551G开发板,板子制作的不错,和我其他的板子对比起来,感觉高级不少。

左边是Air551G,右边是我另外其他厂家一个型号的。

4ae23f86-8832-11ec-9e9d-dac502259ad0.jpg

二、连线

美中不足的是,它的连接线是5针1.25mm的传感器接口,拿到后,可能没有合适的线(年前活动未能同步发出,年后有配套接线)。有的同学,直接把接头口给取下来,直接焊线了。

我手头刚好有6针的接头,剪断一根,削了一针变5针,刚刚好用。

4af1377a-8832-11ec-9e9d-dac502259ad0.jpg

然后把剪断的部分,对接上标准的杜邦线,方便接在其他开发板上使用。当然,如果本身就有对应的1.25接口,那更好了。

初次使用,看了说明书,可以当一个普通的串口设备使用,那就先直接用USB2TTL连接,进行调试好了。等弄清楚了,再上开发板也不迟。

4b04e072-8832-11ec-9e9d-dac502259ad0.jpg

Air551G开发板有五个引脚,其中VCC使用3.3V或者5V电源均可,GND接地,PPS暂时不用,RX、TX接其他设备的对应的TX、RX即可。

4b1223d6-8832-11ec-9e9d-dac502259ad0.png

三、串口连接使用

这个开发板,串口波特率默认情况下,选择115200即可,打开串口,就能看到信息Biu Biu Biu的发过来了。

通过Air551G的手册,我们可以知道,它是主动上报信息的。通电后,就会自动通过串口上报获取到的定位相关信息。

4b272f4c-8832-11ec-9e9d-dac502259ad0.png

4b373a9a-8832-11ec-9e9d-dac502259ad0.gif

收不到定位信息如何解决?


初次使用,如果简单了解过这些信息的格式,可能会郁闷:怎么没有成功定位啊,定位到的经纬度信息,怎么都是0呢?

这是因为,一个单纯的GPS定位模块,需要在室外使用,越开阔的地方越好。而我们常用的手机上使用了基站、WIFi等辅助定位,在室内也通常可以定位,但是在地下车库或者隧道里面,或者信号不好的地方,辅助也不给力,也不能定位了。

那就把Air551放到窗外即可:

4b484100-8832-11ec-9e9d-dac502259ad0.jpg

不一会儿,串口收到的信息,就发生了变化,数字部分,丰富多了。

4b5eb0ca-8832-11ec-9e9d-dac502259ad0.png

串口收到的这些信息,就是导航卫星发送的电文信息,也就是NMEA协议报文。

通常情况下,会包含如下的报文:

4b6b2b02-8832-11ec-9e9d-dac502259ad0.png

定位模块都会主动获取卫星定位系统的报文信息,然后通过串口上报。

上面的报文信息,会分为几类:

1)定位信息:**GGA,通常使用;

2)当前卫星信息:**GSA,一般可以忽略,调试需要;

3)推荐定位信息:**RMC;

4)地面速度信息:**VTG;

5)可见卫星信息:**GSV,一般可以忽略,调试需要。

如果是通过单一的卫星导航系统定位,则上面的**为对应卫星导航系统的标识,如果是多系统定位的话,那么1-4的**会是GN,5则为各卫星导航系统的标识。

卫星导航系统通用标识


  • GN:全球导航卫星系统GNSS;

  • GP:美国全球定位系统GPS;

  • GL:俄罗斯全球轨道导航卫星系统格洛纳斯GLONAS

  • BD:中国的北斗卫星导航系统BDS;

  • GA:欧盟伽利略卫星导航系统GALILEO,全球覆盖,问题较多;

  • IRN:印度区域卫星导航系统IRNSS,范围较小,印度本土及周边、印度洋区域;

  • QZ:日本准天顶卫星导航系统QZSS,是美國GPS的輔助系統,主要服务日本,亦覆盖东亚、澳洲等地。

Air551G支持的卫星定位导航系统,包括:GPS、BDS、GLONAS、GALILEO、IRNSS等。在北京地区,GPS、BDS、GLONAS、GALILEO都能搜到对应的卫星,IRNSS没有见到过。

在上述的报文信息中,我们可以看到GP、GL、GA、BD等GSV信息,对应的就是当前位置,可见的各卫星导航系统的卫星信息。其中,我们可以看到有BDGSC,5开头的BDGSC,5,1至BDGSC,5,5,这个就是一组北斗导航卫星,当前有5颗能为我们提供服务。

但是,其中还有BDGSV开头的信息,这是因为卫星导航系统有不同的频段,提供差异性的服务,也包括系统升级和增强对不同接收端系统的兼容。

通过Air551G提供的资料,我们了解到,支持的北斗导航,包括:BD B1I、BD B1C、BD B2A、BD B2B等。

报文信息的具体资料,可以查看合宙提供的资料:

《 2_GK9701输入输出格式文档V1.0.pdf 》中关于NMEA协议部分的详细说明。

四、经纬度信息到地图坐标转换

以上报文信息中的GGA部分信息:

$GNGGA,063508.000,??53.35241,N,??638.40280,E,1,13,1.15,36.02,M,-5.15,M,,*58

E/W之前的为经度信息,N/S之前的为维度信息,GPS拿到的经纬度信息,需要经过转换两次后,才能在百度地图或者其他地图上使用。

4b861520-8832-11ec-9e9d-dac502259ad0.gif

地图坐标转换示例


假设取到的原始坐标为:

lng0=11626.27158

lat0=3954.85016

第一次转换为WGS84坐标系通用格式:

GPS模块经纬度换算说明,参考网址:
http://www.gnss-module.com/news/47-cn.html

(Math.floor表示取整)

lng1_d=Math.floor(lng0/100) = 116

lng1_m= (lng0-lng1_d*100)/60 = 0.43786

lng1=lng1_d+lng1_m=116.43786

lat1_d=Math.floor(lat0/100) = 39

lat1_m= (lat0-lat1_d*100)/60 = 0.91417

lat1=lat1_d+lat1_m=39.91417

第二次转换为百度地图坐标系:

使用网页转换工具地图坐标系转换,参考网址:
https://tool.lu/coordinate/

通过上述转换工具,可以转换为各地图软件的坐标系;或者也可以在各地图开发者服务中申请对应的API接口。

使用上述网页进行转换时,记住我们要选择WGS84坐标系:

4ba915e8-8832-11ec-9e9d-dac502259ad0.png

转换后的百度坐标地址为:

经度=116.45054049919501

维度=39.921605252645946

然后,我们去百度地图上,使用经纬度进行定位,看看是否准确:

4bb7414a-8832-11ec-9e9d-dac502259ad0.png

该定位地址,就是我们原始的经纬度信息对应的实际百度地图位置。

五、NaviTrack基本使用

通过串口工具,能够正常收到Air551G的信息后,我们就可以使用NaviTrack工具来更有效的获取调试信息了。

先关闭串口工具,再打开NaviTrack,选择正确的串口和波特率,Connect后,界面如下:

4bcd3cac-8832-11ec-9e9d-dac502259ad0.png

注意:需要运行一段时间,且Air551G在室外,才能获得丰富的定位信息。

在以上界面中,各子窗口展示功能:

1)Navi CMD:用于给Air551G发送命令;

2)Track:表示每次输出经纬度坐标点在一个基准位置的散落情况;

3)Signal:表示各导航卫星的信号情况;

4)NAME info:对串口中的信息进行了整理输出,更便于查看分析;

5)Fix mode:修正模式;

6)Sky view:当前可见卫星一览。

如果Sky view中,没有显示到卫星,那么定位就不能进行,NAME info部分的经纬度信息,就会不显示或者显示为0,同时Singal部分也会没有信息。

六、指令发送:

在Navi CMD界面中,我们可以给Air551G发送指令。

重置设备指令示例


如果要重置设备,我们可以发送指令:

PGKC030,4,2

其中:030表示指令编号;4,2表示硬重启,也就是恢复到出厂模式。

4bdb824e-8832-11ec-9e9d-dac502259ad0.png

在串口工具中,我们也可以发送该指令,但是其格式为完整格式:

$PGKC030,4,2*2A[CR][LF]

而Navi CMD会自动帮我们处理$和*后面的内容,并自动添加回车换行[CR][LF];*后面的2A,表示 $和*中间部分的BCC校验(异或校验)结果。

如果不了解如何进行BCC校验,可以通过网页进行计算。
BCC校验(异或校验)在线计算参考网址:

http://www.ip33.com/bcc.html

4bebffde-8832-11ec-9e9d-dac502259ad0.png

4bfc4b82-8832-11ec-9e9d-dac502259ad0.gif

由此我们也可以知道,给Air551G发送指令,其格式为:

$PGKC指令编号,参数1,参数2,...,参数n*BCC校验码[CR][LF]

注意,其中的参数1~n,均为十六进制,BCC校验码,也为16进制。(10进制的10为16进制的A)。

4c1ac166-8832-11ec-9e9d-dac502259ad0.gif

我们还可以再分别尝试两条指令,用于查看只使用北斗导航和所有卫星导航的区别。

注意:在串口工具中,需要输入完整的指令;在Navi CMD中,只用输入$和*中间的部分即可。

只使用北斗导航示例


先试第一条,设置只使用北斗导航:

$PGKC121,0,8,0*39

4c294376-8832-11ec-9e9d-dac502259ad0.png

执行该指令后,NaviTrack的NMEA info和Sky view界面会发生如下变化:

4b861520-8832-11ec-9e9d-dac502259ad0.gif

4c68a05c-8832-11ec-9e9d-dac502259ad0.png

因为刚才执行的那一条指令,表示只使用L1的BD导航,所以现在只显示了北斗导航的卫星。

同样的,如果我们使用串口工具发送指令后,会看到如下返回:

4c791888-8832-11ec-9e9d-dac502259ad0.png

可以看到,报文中,就只有BD的信息了。

注意:使用串口工具,一定要勾选尾部添加CRLF,否则指令无效。

使用所有卫星导航示例


我们在执行使用所有卫星导航指令后,上述界面中的卫星,又会变得多了起来。

$PGKC121,5,3F,3F*34

4b861520-8832-11ec-9e9d-dac502259ad0.gif

4cb4d044-8832-11ec-9e9d-dac502259ad0.png

以上展示了基本的指令使用,在前面的《2_GK9701输入输出格式文档V1.0.pdf》中,有详细的指令说明,有需要可以仔细研读。

另外,出厂情况下,串口上报的信息会尽可能丰富,但是我们在实际使用中,如前面对报文简介所说的,很多只是调试使用,实际使用时不用。我们可以使用输出控制指令,设置需要输出哪些信息即可。

具体指令格式为:

4ccd2a22-8832-11ec-9e9d-dac502259ad0.png

实际上,9-21位的0,并不需要输入,我们只输入1-8位即可,1表示开启对应的输出,0表示关闭对应的输出。

GGA获取经纬度信息示例


在实际使用中,我们只需要通过GGA获取经纬度信息即可,那么发送的指令如下:

$PGKC242,0,0,0,1,0,0*2A

如果我们要把调试的信息都发出来,则使用如下的指令:

$PGKC242,1,1,1,1,1,1*2B

再次提醒:

在串口工具中,需要输入完整的指令;在Navi CMD中,只需要输入$和*之间的部分(不包含$和*)即可。

设置只输出GGA信息后,我们就可以使用其他开发板的串口来连接Air551G,通过串口读取即可。

到这里,我们了解了如何通过串口上报的报文,获取经纬度信息,以及通过发送对应的指令来控制Air551G的运行模式了。

后续通过合宙的其他LuatOS开发板,或者MicroPython类的开发板,都能非常方便的获取定位信息。再结合屏幕,就能够进行实际的定位展示了。

今天的分享就先到这里了,希望对大家有帮助,一起多交流~

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 开发板
    +关注

    关注

    25

    文章

    5035

    浏览量

    97391
收藏 人收藏

    评论

    相关推荐

    如何使用Air780E开发板?看这篇就够了!

    ​ 一、综述 CORE-AIR780E 开发板通信推出的基于 Air780E 模组所开发
    的头像 发表于 10-23 17:07 388次阅读
    如何使用<b class='flag-5'>Air</b>780E<b class='flag-5'>开发板</b>?看这篇就够了!

    RNDIS网卡应用看这篇!Air780EP低功耗4G模组AT开发示例

    ** ​ 1.1 硬件准备 EVB_Air780EP开发板一套,包括天线、SIM卡; USB线 WIN10以上PC电脑 1.2 软件准备 串口工具 如果没有准备,推荐使用LLCO
    的头像 发表于 09-30 06:59 558次阅读
    RNDIS网卡应用看这篇!<b class='flag-5'>合</b><b class='flag-5'>宙</b><b class='flag-5'>Air</b>780EP低功耗4<b class='flag-5'>G</b>模组AT<b class='flag-5'>开发</b>示例

    FTP应用看这篇!Air780EP低功耗4G模组AT开发示例

    780EX/Air724UG… **一、相关准备工作 ** ​ 1.1 硬件准备 EVB_Air780EP开发板一套,包括天线、SIM卡
    的头像 发表于 09-29 09:36 1814次阅读
    FTP应用看这篇!<b class='flag-5'>合</b><b class='flag-5'>宙</b><b class='flag-5'>Air</b>780EP低功耗4<b class='flag-5'>G</b>模组AT<b class='flag-5'>开发</b>示例

    Air201资产定位模组LuatOS基础课程:FOTA远程升级,一键搞定!

    201的实用示例**——FOTA远程升级** ** FOTA远程升级** [ ] Air201资产定位模组 ——是一个集成超低功耗4G
    的头像 发表于 09-18 18:07 408次阅读
    <b class='flag-5'>合</b><b class='flag-5'>宙</b><b class='flag-5'>Air</b>201资产<b class='flag-5'>定位</b>模组LuatOS基础课程:FOTA远程升级,一键搞定!

    Air201资产定位模组LuatOS课程(六):PWRKEY控制解决关机难问题

    ​ 经过前面5期的课程:从hello world初体验,到点灯、远程控制,再到定位,扩展功能,是不是有点上瘾了?Air201,如同我们一路升级打怪的得力法器,让
    的头像 发表于 09-18 07:06 432次阅读
    <b class='flag-5'>合</b><b class='flag-5'>宙</b><b class='flag-5'>Air</b>201资产<b class='flag-5'>定位</b>模组LuatOS课程(六):PWRKEY控制解决关机难问题

    Air201资产定位模组LuatOS快速入门:GPS/LBS/Wi-Fi定位,全安排!​

    教程   Air201资产定位模组 ——是一个集成超低功耗4G通信、语音通话、超低功耗定位
    的头像 发表于 09-14 07:56 452次阅读
    <b class='flag-5'>合</b><b class='flag-5'>宙</b><b class='flag-5'>Air</b>201资产<b class='flag-5'>定位</b>模组LuatOS快速<b class='flag-5'>入门</b>:GPS/LBS/Wi-Fi<b class='flag-5'>定位</b>,全安排!​

    GPS/LBS/Wi-Fi定位,全安排!—Air201资产定位模组LuatOS快速入门04

    程/固件。   Air201定位示例教程     Air201资产定位模组 ——是一个集成超
    的头像 发表于 09-12 12:04 1248次阅读
    GPS/LBS/Wi-Fi<b class='flag-5'>定位</b>,全安排!—<b class='flag-5'>合</b><b class='flag-5'>宙</b><b class='flag-5'>Air</b>201资产<b class='flag-5'>定位</b>模组LuatOS快速<b class='flag-5'>入门</b>04

    低功耗4G模组AIR780EX ——开发板使用说明

    EVB-AIR780EX 开发板通信推出的基于 Air780EX 模组所开发的,包含电源,
    的头像 发表于 09-11 11:55 694次阅读
    <b class='flag-5'>合</b><b class='flag-5'>宙</b>低功耗4<b class='flag-5'>G</b>模组<b class='flag-5'>AIR</b>780EX ——<b class='flag-5'>开发板</b>使用说明

    4G模组Air780E开发板使用手册

    开发板Air780E使用说明
    的头像 发表于 09-09 18:22 696次阅读
    <b class='flag-5'>合</b><b class='flag-5'>宙</b>4<b class='flag-5'>G</b>模组<b class='flag-5'>Air</b>780E<b class='flag-5'>开发板</b>使用手册

    LuatOS开发板Core_Air780EP使用说明

    Core-Air780EP 开发板通信推出的基于 Air780EP 模组所开发的,包含电源
    的头像 发表于 09-03 17:38 553次阅读
    <b class='flag-5'>合</b><b class='flag-5'>宙</b>LuatOS<b class='flag-5'>开发板</b>Core_<b class='flag-5'>Air</b>780EP使用说明

    低功耗4G模组Air700EAQ——开发板使用说明

    低功耗4G模组Air700EAQ——开发板使用说明
    的头像 发表于 08-30 17:14 1092次阅读
    <b class='flag-5'>合</b><b class='flag-5'>宙</b>低功耗4<b class='flag-5'>G</b>模组<b class='flag-5'>Air</b>700EAQ——<b class='flag-5'>开发板</b>使用说明

    LuatOS开发板使用手册——Air700ECQ

    LuatOS开发板使用说明——Air700ECQ
    的头像 发表于 08-23 16:28 571次阅读
    <b class='flag-5'>合</b><b class='flag-5'>宙</b>LuatOS<b class='flag-5'>开发板</b>使用手册——<b class='flag-5'>Air</b>700ECQ

    Air780EP模块——AT指令MQTT接入OneNET开发指南

    过程,Air780EP和MQTT是最佳拍档,让设备互联变得轻松又靠谱。想不想试试这简单又神奇的操作?那就来吧!本文详细讲解了基于Air80EP
    的头像 发表于 08-19 16:40 2211次阅读
    <b class='flag-5'>合</b><b class='flag-5'>宙</b><b class='flag-5'>Air</b>780EP模块——AT指令MQTT接入OneNET<b class='flag-5'>开发</b>指南

    Air201定位模组,千万不要忘记设置这个......

    Air201定位模组,千万不要忘记设置这个:AT+WIFILOC设置wifi定位优先
    的头像 发表于 08-09 18:01 1492次阅读
    <b class='flag-5'>合</b><b class='flag-5'>宙</b><b class='flag-5'>Air</b>201<b class='flag-5'>定位</b>模组,千万不要忘记设置这个......

    “花生米”4G模组——Air700EL Air700EY全新上市

    “是花生米太大,还是Air700模组太小?”深受工程师朋友喜爱的Air700系列迷你小封装4G模组,也被称为“花生米”。今天,
    的头像 发表于 12-26 08:04 2238次阅读
    <b class='flag-5'>合</b><b class='flag-5'>宙</b>“花生米”4<b class='flag-5'>G</b>模组——<b class='flag-5'>Air</b>700EL <b class='flag-5'>Air</b>700EY全新上市