基站定位与Wi-Fi定位?看这篇就够了
同学们纷纷发出需求,要求特别讲解Air780EP模组AT开发基站定位与Wi-Fi定位应用示例。
本文同样适用于以下型号:
Air700ECQ/Air700EAQ/Air700EMQ
Air780EQ/Air780EPS/Air780EX
Air780E/Air724UG…
一、定位原理
1.1 应用概述
当手机在插入SIM卡后开机,便需要搜索周围的基站信息(俗称找信号)。通常在有信号的地方,手机能搜到的基站不止一个。此时手机会主动从这些基站中,选择信号最好的(假如是基站A)进行连接注册。
那么,这时候其余基站就不使用了吗?
其实不是的,手机仍然会继续搜索着它们。一旦离基站A远,离基站B近时,此时基站B的信号最好,手机会主动切换成基站B。
由于手机在待机一天的情况下,需要不停的搜索基站、连接基站,这也就解释了手机在火车上要比在家时耗电要多的原因。
编辑
1.2 基站定位原理
众所周知,当距离基站越远时信号便会越差,因此通过信号强度可以大致估计出距离基站的远近。
由于基站都是中国移动、中国联通等运营商所建立的,所以他们可以确定每个基站准确的位置。当手机同时搜索到至少三个基站信号时,手机除了连接信号最好的一个之外,还会根据基站信号的强弱大致估计出距离基站的远近。
由于基站位置已经确定,所以确定位置便容易的多了——只需以基站为圆心,距离为半径多次画圆即可。基站信号的多少决定着定位的准确,三个以上最为准确,若只搜索到一个或两个基站也可以定位,只不过没有那么准确而已。
1.3 Wi-Fi定位原理
Wi-Fi定位原理就是模块收集周围Wi-Fi的mac地址和信号质量,然后带着这些信息去访问Wi-Fi定位服务器,由服务器去自己数据库里搜索对应Mac地址,再根据信号质量确定设备离对应的Wi-Fi信息源距离,进而返回对应坐标。
二、相关准备工作
编辑
2.1 硬件准备
合宙Air780EP_全IO开发板一套,包括天线、SIM卡;
USB线
PC电脑
2.2 软件准备
串口工具
如果没有准备,推荐使用LLCOM:
https://llcom.papapoi.com
AT固件下载
https://doc.openluat.com/article/5055烧录教程
https://doc.openluat.com/wiki/21?wiki_page_id=6072
本文示例烧录的AT固件版本为:
AirM2M_780EP_LTE_AT_V1007
推荐选用:相关型号固件名称后面数字版本号最高的最新版本进行调试。
三、定位应用示例
以下是AT命令序列,如果不理解AT命令含义,可参考AT手册。
3.1 基站定位示例
编辑
3.2 Wi-Fi定位示例
编辑
四、常见问题Q&A
4.1 如何在网站上查询小区对应的位置信息?
通过AT+CCED=0,1查询到小区信息如下:
+CCED:LTE current cell:
460,01,460060086257105,0,3,5,1650,100119839,62,24,56848,34,86
再通过合宙推出的根据小区信息在线查询位置服务,输入对应参数后即可查到对应位置信息。
编辑
4.2 Wi-Fi定位失败的可能原因有哪些?
如果没有搜索到Wi-Fi热点,用手机对比确认下是否可以搜索到附近Wi-Fi。如果手机可以搜到,确认下模块的板子上是否有接Wi-Fi天线。
如果可以搜索到Wi-Fi热点,但是Wi-Fi热点很少,用手机对比确认下搜索到附近Wi-Fi数量。如果数量差别太大,确认下模块的板子上是否有接Wi-Fi天线,或者所接的天线是否支持2.4G频段。
4.3 基站定位获取的经纬度是什么格式的?
基站定位获取的经纬度为WGS-84格式;各种坐标系说明以及转换方法请参考下方链接。
GPS定位纠偏:
http://old.openluat.com/GPS-Offset.html
4.4 Wi-Fi定位获取的经纬度是什么坐标系的?
Wi-Fi定位获取的经纬度是WGS-84地心坐标系(GPS全球定位系统建立的坐标系统)。
4.5 Wi-Fi定位精度如何?
根据设备获取的Wi-Fi的信息进行定位,Wi-Fi定位精度一般不受使用环境影响,主要和单一Wi-Fi辐射半径、Wi-Fi覆盖密度有关。一般来说,Wi-Fi精度在3米~200米左右。
4.6 基站定位精度如何?
搜索到的小区越多,定位的精度越高;一般来说,城市中心定位精度比郊区和农村定位精度高。城市中心的定位精度在几十米到几百米不等,郊区和农村的定位精度更低,可能会有几千米甚至更多的误差。
特别注意:
基站定位的误差都比较大,如果需要准确定位,请使用支持GPS的模块。
4.7 模组Wi-Fi定位支持国外定位吗?
不支持,只支持国内定位。
基站定位与Wi-Fi定位?看这篇就够了的更多相关文章
- Vue学习看这篇就够
Vue -渐进式JavaScript框架 介绍 vue 中文网 vue github Vue.js 是一套构建用户界面(UI)的渐进式JavaScript框架 库和框架的区别 我们所说的前端框架与库的 ...
- Python GUI之tkinter窗口视窗教程大集合(看这篇就够了) JAVA日志的前世今生 .NET MVC采用SignalR更新在线用户数 C#多线程编程系列(五)- 使用任务并行库 C#多线程编程系列(三)- 线程同步 C#多线程编程系列(二)- 线程基础 C#多线程编程系列(一)- 简介
Python GUI之tkinter窗口视窗教程大集合(看这篇就够了) 一.前言 由于本篇文章较长,所以下面给出内容目录方便跳转阅读,当然也可以用博客页面最右侧的文章目录导航栏进行跳转查阅. 一.前言 ...
- Pycharm新手教程,只需要看这篇就够了
pycharm是一款高效的python IDE工具,它非常强大,且可以跨平台,是新手首选工具!下面我给第一次使用这款软件的朋友做一个简单的使用教程,希望能给你带来帮助! 目前pycharm一共有两个版 ...
- ASP.NET Core WebApi使用Swagger生成api说明文档看这篇就够了
引言 在使用asp.net core 进行api开发完成后,书写api说明文档对于程序员来说想必是件很痛苦的事情吧,但文档又必须写,而且文档的格式如果没有具体要求的话,最终完成的文档则完全取决于开发者 ...
- .NET Core实战项目之CMS 第二章 入门篇-快速入门ASP.NET Core看这篇就够了
作者:依乐祝 原文链接:https://www.cnblogs.com/yilezhu/p/9985451.html 本来这篇只是想简单介绍下ASP.NET Core MVC项目的(毕竟要照顾到很多新 ...
- 想了解SAW,BAW,FBAR滤波器的原理?看这篇就够了!
想了解SAW,BAW,FBAR滤波器的原理?看这篇就够了! 很多通信系统发展到某种程度都会有小型化的趋势.一方面小型化可以让系统更加轻便和有效,另一方面,日益发展的IC**技术可以用更低的成本生产 ...
- [译]ASP.NET Core Web API 中使用Oracle数据库和Dapper看这篇就够了
[译]ASP.NET Core Web API 中使用Oracle数据库和Dapper看这篇就够了 本文首发自:博客园 文章地址: https://www.cnblogs.com/yilezhu/p/ ...
- ExpandoObject与DynamicObject的使用 RabbitMQ与.net core(一)安装 RabbitMQ与.net core(二)Producer与Exchange ASP.NET Core 2.1 : 十五.图解路由(2.1 or earler) .NET Core中的一个接口多种实现的依赖注入与动态选择看这篇就够了
ExpandoObject与DynamicObject的使用 using ImpromptuInterface; using System; using System.Dynamic; names ...
- 【转】ASP.NET Core WebApi使用Swagger生成api说明文档看这篇就够了
原文链接:https://www.cnblogs.com/yilezhu/p/9241261.html 引言 在使用asp.net core 进行api开发完成后,书写api说明文档对于程序员来说想必 ...
- C#实现多级子目录Zip压缩解压实例 NET4.6下的UTC时间转换 [译]ASP.NET Core Web API 中使用Oracle数据库和Dapper看这篇就够了 asp.Net Core免费开源分布式异常日志收集框架Exceptionless安装配置以及简单使用图文教程 asp.net core异步进行新增操作并且需要判断某些字段是否重复的三种解决方案 .NET Core开发日志
C#实现多级子目录Zip压缩解压实例 参考 https://blog.csdn.net/lki_suidongdong/article/details/20942977 重点: 实现多级子目录的压缩, ...
随机推荐
- WM_LBUTTONDOWN,WM_LBUTTONUP
WM_LBUTTONDOWN //鼠标左键按下消息WM_LBUTTONUP //鼠标左键弹起消息参数和按下一样 当用户在窗口的客户区域中按住鼠标左键时,会发布WM_LBUTTONDOWN消息.如果未捕 ...
- Spring Boot 框架中配置文件 application.properties 当中的所有配置大全
Spring Boot 框架中配置文件 application.properties 当中的所有配置大全 #SPRING CONFIG(ConfigFileApplicationListener) s ...
- 云存储抽象层-FluentStorage
FluentStorage 是一个.NET云存储抽象层,支持多种云服务提供商.它提供了一个统一的API来处理不同云服务提供商的Blob存储(如AWS S3, GCP, FTP, SFTP, Azure ...
- MyBatis日志工厂
目录 日志工厂 标准日志实现 Log4j 使用步骤: 日志工厂 我们在测试SQL的时候,要是能够在控制台输出 SQL 的话,是不是就能够有更快的排错效率? 如果一个 数据库相关的操作出现了问题,我们可 ...
- 2024-09-04:用go语言,给定一个长度为n的数组 happiness,表示每个孩子的幸福值,以及一个正整数k,我们需要从这n个孩子中选出k个孩子。 在筛选过程中,每轮选择一个孩子时,所有尚未选
2024-09-04:用go语言,给定一个长度为n的数组 happiness,表示每个孩子的幸福值,以及一个正整数k,我们需要从这n个孩子中选出k个孩子. 在筛选过程中,每轮选择一个孩子时,所有尚未选 ...
- HTML & CSS – dir, direction, writing-mode, ltr (left to rigth), rtl (right to left)
前言 世界上有很多语言的阅读方向是不同的. 英文 中文 (以前才有竖排文字, 现在中文和英语一样了) 阿拉伯文 (Arabic) 面对不同的语言, HTML 和 CSS 就需要不同的写法. 虽然我没有 ...
- 2024.7.5-2024.7.20 HA省学会集训游记(焦作一中)
这是一篇长篇小说 DAY1 除了DAY4-DAY5个别内容以外,这些都是补的,但是全写完有太多了qwq,挑题写了 树状数组和线段树基础 很多都是一些模板题,太模板的题不再做太多解释 题目: P4062 ...
- Flutter 3.3 正式发布
Flutter 3 是我们正式为全平台提供支持的一个重量级里程碑,距离它的发布仅过去了三个月,今天让我们有请 Flutter 3.3 正式版!近三个月我们并没有放慢更新迭代的速度--自 Flutter ...
- spring 拦截器实现token校验登录
pom文件 <dependency> <groupId>com.auth0</groupId> <artifactId>java-jwt</art ...
- 【赵渝强老师】在MongoDB中使用游标
一.什么是游标? 游标(Cursor)是处理数据的一种方法,为了查看或者处理结果集中的数据,游标提供了在结果集中一次一行或者多行前进或向后浏览数据的能力. 游标实际上是一种能从包括多条数据记录的结果集 ...