超绝!基站/Wi-Fi/GPS定位技术详解与应用示例

news/2024/12/19 13:13:04/文章来源:https://www.cnblogs.com/luatos/p/18615378

今天特别分享定位相关示例,欢迎大家一起来探讨。

一、基站/Wi-Fi/GPS定位概述

1.1 基站定位原理

基站定位也就是“LBS定位”,全称是Location Based Service,它包括两层含义:

首先是确定移动设备或用户所在的地理位置;其次是提供与位置相关的各类信息服务。意指与定位相关的各类服务系统,简称“定位服务”。

多基站定位中,模组正常联网后,搜索并上报周围的基站信息,上报到服务器后,服务器根据三角定位法,估算出一个大概的坐标,最后返回计算出来的经纬度给模组。

单基站定位中,模组正常联网后,搜索并上报周围的基站信息,服务器会存储多数已知基站的经纬度,根据模组上报的基站信息,直接下发对应位置的经纬度数据。

多基站一般精度在10-300米内,单基站误差有可能会在1.5KM内。

1.2 Wi-Fi定位原理

Wi-Fi定位的原理和基站定位原理类似,搜索并上报附近的 Wi-Fi信息,上报到服务器后,服务器根据三角定位法,估算出一个大概的坐标,精度在50~500米不等。

1.3 GPS定位原理

GPS不限制终端数,在GPS卫星信号不被阻挡的情况下,在地球上任何地点、任何时间,任何GPS终端都可以得到正确的位置和时间。定位只需要一个条件,那就是能够接收到足够多的卫星信号。因此,在室内通常无法定位。

Air201板载GNSS芯片特性:

捕获:18mw

追踪:10mw

单点定位精度<1.5m

灵敏度:-149dbm

支持双频,北斗,RTK(选配)

二、基站/Wi-Fi/GPS定位示例

本文将通过基站/Wi-Fi/GPS定位具体应用示例教程,教你使用Air201来实现定位服务,在实际开发中可根据具体情况灵活应用。

▼ 定位示例主要内容 ▼
免费版本基站定位:

烧录示例demo,通过lbsLoc2.request接口发起请求,进行单基站定位。

收费版本Wi-Fi+基站混合定位:

烧录示例demo,通过airlbs.request接口发起请求,上报基站和Wi-Fi,进行混合定位。

注:实际应用中,需先联系销售开通付费服务,然后在合宙IoT平台LBS服务中查看自己的id和key。

GPS定位:

烧录示例demo,实现GPS定位。

接下来,我们详细讲解应用示例的具体操作。

2.1 搭建环境

新同学建议先看前期的基础知识相关教程,更有助于理解和操作。

可以在LuaTools项目管理中新建一个项目,重新选择底层CORE和脚本;或者在原有项目的基础上,不更换CORE,将原来的脚本删除,添加为所需的定位功能脚本。

2.1.1 硬件准备:

Air201 PCBA

配套USB_BOOT小板

可正常上网的SIM卡

带有数据通信功能的数据线

Win10及以上PC

2.1.2 软件准备:

LuaTools调试工具:

https://docs.openluat.com/Luatools

最新固件:https://gitee.com/openLuat/LuatOS-Air201/tree/master/core

最新脚本:

GPS定位:

https://gitee.com/openLuat/LuatOS-Air201/blob/master/demo/gps_lbs_wifi/gnss.lua

免费版本基站定位:

https://gitee.com/openLuat/LuatOS-Air201/blob/master/demo/lbsLoc2/main.lua

付费版本基站定位:

https://gitee.com/openLuat/LuatOS-Air201/blob/master/demo/airlbs/main.lua

2.1.3 烧录操作:

由于Air201单板子没有复位键和BOOT键,所以数据线与Air201开发板之间还需要接一个USB_BOOT小板(Air201套件里已包含,无需单独购买)。

将Air201通过USB_BOOT小板连接电脑,如下图所示:

1)根据下方操作进行烧录
此时就需要大家先点击Luatools工具上的【下载脚本】或【 下载底层和脚本】,再执行下方操作了。

新同学请先学习LuaTools使用和烧录教程:

https://docs.openluat.com/Luatools/

开发板处于未开机状态:

此时先按住下载模式按键(BOOT键)不放,再长按开机键(POW键)开机。若不出意外开发板将会进入下载模式,LuaTools工具下载进度条会开始跑,这时便可以松开BOOT键和POW键,等到工具提示下载完成即可。

开发板已经处于开机状态:

此时可以先按住BOOT键不放,再短按复位键(RST键)后开发板会重启并进入下载模式。

2)不同模式下的端口显示
正常开机模式:

下载模式:

2.2 示例代码

了解Air201的GPS定位、免费版本基站定位、付费版本基站定位示例代码之前,请注意:

免费版本基站定位为:单基站定位;

付费版本基站定位分为两种:

多基站定位、Wi-Fi+基站混合定位。

相对于免费的单基站定位服务来说,付费版本的基站定位方式精度更高。

▼ GPS定位示例 ▼
代码介绍:

1)打开GPS的供电和复位引脚。

02)开机后初始化一些GPS和打印数据的端口,清空一下历史定位数据,设置端口参数,更新星历,绑定端口。

03)订阅GNSS状态,GNSS有两种状态:FIXED-定位成功和LOSE-定位丢失。

04)写入星历,即AGPS辅助定位。

运行结果展示:

定位成功后,获取位置字符串。

▼ 免费版本基站定位示例 ▼
免费版本仅支持单基站定位,若需要更精准的定位服务,请查看付费版本多基站定位或GPS定位。

代码介绍:

运行结果展示:

返回的经纬度信息如下图红框所示:

▼ 付费版本多基站定位示例 ▼
代码介绍:

运行结果展示:

返回的经纬度信息如下图所示:

▼ 付费版本Wi-Fi + 基站混合定位示例 ▼
受限于模组设计,在使用Wi-Fi扫描时候,4G数据传输较慢丢包概率较大,所以尽量在Wi-Fi扫描完毕后,再进行数传工作。

代码介绍:

01)初始化:
等待联网,初始化wlan,扫码Wi-Fi频段。

02)Wi-Fi + 基站混合定位:
Wi-Fi扫描成功后,通过airlbs.request发送定位请求,进行混合定位。

运行结果展示:

本示例采用Wi-Fi + 多LBS混合定位,使用airlbs.request接口,上报基站和Wi-Fi信息,进行混合定位。

开通付费服务后,会显示附近多个基站定位信息,基站定位成功后返回获取到的经纬度信息。

如下图所示:

三、基站/Wi-Fi/GPS定位常见问题

3.1 基站定位精度如何?

搜索到的小区越多,定位的精度越高;一般来说,城市中心定位精度比郊区和农村定位精度高,城市中心的定位精度在几十米到几百米不等,郊区和农村的定位精度更低,可能会有几千米甚至更多的误差。

通过多小区定位,将实时搜索到的所有小区同时上报给后台参与定位,基站定位的误差都比较大。如果需要准确定位,请使用GPS定位。

3.2 官方的基站定位能在国外使用吗?

不能,没有国外的基站数据库。

3.3 为什么基站定位失败?

1)后台基站数据库查询不到所有小区的位置信息;

在LuaTools脚本日志中向上搜索mcc,mnc,lac,ci:

然后在电脑浏览器中打开:定位查询网站bs.openluat.com,手动查找mcc,mnc,lac,ci后的所有小区位置。

如果手动可以查到位置,则服务器存在BUG,直接向技术支持人员反映问题;如果手动无法查到位置,则基站数据库还没有收录当前设备的小区位置信息,向技术支持人员反馈,我们会尽快收录。

2)达到了总的QPS限制数量。

3.4 基站/Wi-Fi定位定位获取的经纬度是什么格式的?

基站定位获取的经纬度为WGS-84格式,各种坐标系说明以及转换方法请网上搜索坐标系在线转换工具即可查询。

3.5 GPS定位经纬度不准确是什么原因?

坐标没有纠偏,GPS定位输出的坐标为WGS84坐标系,请网上搜索坐标系在线转换工具进行纠偏;

周围有比较高的障碍物,会导致定位误差;

在开阔地带,正常情况下定位精度只能做到5米;

不能在室内测试,必须到室外测试;如果只能在室内测试,可以淘宝搜索"GPS信号转发器"。

今天的内容就分享就到这里了~

更多实用示例带你开启应用之门,下一期见!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/855349.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LuaTools日志相关内容来喽~帮工程师朋友解决99%的问题

本文将详细介绍LuaTools日志的相关内容,帮助你解决在使用过程中可能遇到的99%的问题。 LuaTools新版下载/使用教程: https://docs.openluat.com/Luatools/ 一、LuaTools日志分类 LuaTools包括4种日志:工具本身的日志、用户日志、底层日志、死机日志。 1. 工具本身的日志 在工…

【路由交换】华为交换机和路由器配置DHCP和DHCP中继

1.DHCP原理和实验拓扑 1.1.DHCP原理 DHCP一共有四个阶段:DHCP Discover 、DHCP Offer、DHCP Request、DHCP ACKDHCP Discover:发送DHCP Discover消息,寻找DHCP Server,表示自己需要获取一个IP地址 DHCP Offer:响应所收到的DHCP Discover消息,把准备提供的IP地址携带在DHC…

jquery表格转excel表格插件

excel-gen.js是一款jquery表格转excel表格插件。该jquery插件可以在客户端将HTML表格导出为Excel表格,并且下载为一个xlsx类型的Excel文件。在线演示 下载使用方法 excel-gen.js表格转excel表格插件依赖于jszip.js和FileSaver.js插件。<script src="path/to/jquery.m…

软考中级 网络工程师教程(第六版) 信息系统项目管理师教程(第四版)扫描PDF

封面 网络工程师教程 (第六版) 信息系统项目管理师教程(第四版)下载链接 网络工程师教程(第六版) 信息系统项目管理师教程(第四版)

第四天案例联系-热词

效果:五个热词点击可以跳转到指定页面,悬停时有颜色区别 遇到问题:文字在各个块中水平,垂直居中显示①水平显示:text-align:center【注意:要注意将这个属性设置到父级元素】②垂直显示:line-height:80px【通过行高来设置,将行高设置与块的大小一样】<!DOCTYPE htm…

广州互联网知识付费系统有哪些

当前,在广州地区,有多家机构专注于开发和定制各类互联网知识付费系统,旨在为教育与相关领域的专业人士提供优质解决方案。这些系统的功能覆盖了知识内容发布、交易以及用户的学习需求,并结合多种营销工具以满足用户多样化的应用场景。@www.tuzhi.ltd 侵删这类服务主要提供知…

20222404 2024-2025-2 《网络与系统攻防技术》实验八实验报告

1.实验内容 (1)Web前端HTML 能正常安装、启停Apache。理解HTML,理解表单,理解GET与POST方法,编写一个含有表单的HTML。 (2)Web前端javascipt 理解JavaScript的基本功能,理解DOM。 在(1)的基础上,编写JavaScript验证用户名、密码的规则。在用户点击登陆按钮后回显“欢迎+…

Dodcker如何导入镜像tar

Dodcker如何导入镜像tar 我们可以将docker镜像导出为压缩文件,然后再在另一主机上导入。 要在Docker中导入一个.tar格式的镜像文件,您可以使用docker load命令。这个命令会将一个保存的镜像压缩文件(.tar,.tar.gz或.tgz)加载到Docker镜像库中。 docker load -i <image_…

恭喜CUUG 11月16日考试的同学获得PG中级/PG高级证书

恭喜在11月16日参加工信部人才交流中心PostgreSQL管理员PG中级和PG高级认证考试的各位同学,顺利通过了考试,证书在工信人才官网可查。部分学员证书:............为什么选择工信人才PostgreSQL认证:发证机构:工信部人才交流中心属于工信部直属的二类事业单位,证书的权威性…