基站定位技术原理

2024-03-02 04:58
文章标签 技术 原理 定位 基站

本文主要是介绍基站定位技术原理,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

位置服务已经成为越来越热的一门技术,也将成为以后所有移动设备(智能手机、掌上电脑等)的标配。随着人们对BLS(Based Location Serices,基于位置的服务)需求的飞速增长,无线定位技术也越来越得到重视。GSM蜂窝基站定位,以其定位速度快、成本低(不需要移动终端上添加额外的硬件)、耗电少、室内可用等优势,作为一种轻量级的定位方法,也越来越常用。本文简单介绍一下各种基于GSM蜂窝基站的定位方法及基本原理,给开发人员作为参考。我将尽量尝试用开发人员熟悉的方式来描述问题。


      预备知识:GSM蜂窝网络基础结构我们知道,GSM网络的基础结构是由一系列的蜂窝基站构成的,这些蜂窝基站把整个通信区域划分成如图所示的一个个蜂窝小区(当然实际上,一个基站往往不并不只是对应一个小区,但是这个与我们讨论的主题关系不大,我们不做深究)。这些小区小则几十米,大则几千米。如下图所示,我们用移动设备在GSM网络中通信,实际上就是通过某一个蜂窝基站接入GSM网络,然后通过GSM网络进行数据(语音数据、文本数据、多媒体数据等)传输的。也就是说我们在GSM中通信时,总是需要和某一个蜂窝基站连接的,或者说是处于某一个蜂窝小区中的。那么GSM定位,就是借助这些蜂窝基站进行定位。

image

1. COO(Cell of Origin)定位COO定位是一种单基站定位,即根据设备当前连接的蜂窝基站的位置来确定设备的位置。那么很显然,定位的精度就取决于蜂窝小区的半径。在基站密集的城市中心地区,通常会采用多层小区,小区划分的很小,这时定位精度可以达到50M以内;而在其他地区,可能基站分布相对分散,小区半径较大,可能达到几千米,也就意味着定位精度只能粗略到几千米。目前Google地图移动版中,通过蜂窝基站确定“我的位置”,基本上用的就是这种方法。


从原理上我们可以看出,COO定位其精度是不太确定的。但是这却是GSM网络中的移动设备最快捷、最方便的定位方法,因为GSM网络端以及设备端都不需要任何的额外硬件投入。只要运营商支持,GSM网络中的设备都可以以编程方式获取到当前基站的一个唯一代码,我们可以称之为基站ID,或CellID。在一般的设备中,可能都存在一个类似如下的GetCurrentCellID()方法的接口来提供当前GSM蜂窝基站ID:CellID = GetCurrentCellID();通过这个接口获取到CellID后,我们还需要根据这个CellID查出该蜂窝基站所在的具体地理坐标。这时,我们可能就需要调用一些包含[CellID,地理坐标]对应关系的外部数据以确定相应的地理坐标。这个外部数据,通常可以由一些第三方Web服务来提供。这些Web服务的接口可能类似于如下形式:
Position=GetPosition(CellID);当然,再次说明,上面的GetCurrentCellID方法、GetPosition方法都是我虚构的,只是为了说明逻辑关系,并不一定实际存在。


2.七号信令定位该技术以信令监测为基础,能够对移动通信网中特定的信令过程,如漫游、切换以及与电路相关的信令过程进行过滤和分析,并将监测结果提供给业务中心,以实现对特定用户的个性化服务。该项技术通过对信令进行实时监测,可定位到一个小区,也可定位到地区。故适用对定位精确度要求不高的业务,如漫游用户问候服务,远程设计服务、平安报信和货物跟踪等。目前,国内各省和地区移动公司的短信欢迎系统采用的就是此种技术。

 

3.TOA/TDOA定位TOA(Time of Arrival,到达时间)、TDOA(Time Difference of Arrival,到达时间差)都是基于电波传播时间的定位方法。同时也都是三基站定位方法,二者的定位都需要同时有三个位置已知的基站合作才能进行。

image2png

 

如上图所示,TOA/DTOA定位方法都是通过三对[Positioni,Ti](i=1,2,3)来确定设备的位置Location。二者的不同只是GetLocation()函数的具体算法上的不同。
TOA电波到达时间定位基本原理是得到Ti(i=1,2,3)后,由Ti*c得到设备到基站i之间的距离Ri,然后根据几何只是建立方程组并求解,从而求得Location值。如下图所示。

image3

 

由于图中距离的计算完全依赖于时间,因此TOA算法对系统的时间同步要求很高,任何很小的时间误差都会被放大很多倍,同时由于多径效应的影响又会带来很大的误差,因而单纯的TOA在实际中应用很少。
DTOA电波到达时间差定位是对TOA定位的改进,与TOA的不同之处在于,得到Ti后不是立即用Ti去求距离Ri,而是先对T1,T2,T3两两求差,然后通过一些巧妙的数学算法建立方程组并求解,从而得到Location值。如下图所示。

image4

 

DTOA由于其中巧妙设计的求差过程会抵消其中很大一部分的时间误差和多径效应带来的误差,因而可以大大提高定位的精确度。
由于DTOA对网络要求相对较低,并且精度较高,因而目前已经成为研究的热点。

4.AOA定位AOA(Angle of Arrival,到达角度)定位是一种两基站定位方法,基于信号的入射角度进行定位。

image5

 

如上图所示,知道了基站1到设备之间连线与基准方向的夹角α1,就可以画出一条射线L1;同样知道了知道了基站2到设备之间连线与基准方向的夹角α2,就可以画出一条射线L2。那么L1月L2的交点就是设备的位置。这就是AOA定位的基本数学原理。用函数调用表达如下。
Location=GetLocation([Pisition1,α1],[Position2,α2]);AOA定位通过两直线相交确定位置,不可能有多个交点,避免了定位的模糊性。但是为了测量电磁波的入射角度,接收机必须配备方向性强的天线阵列。

5.基于场强的定位该方法是通过测出接收到的信号场强和已知的信道衰落模型及发射信号的场强值估计收发信短的距离,根据多个三个距离值就可以得到设备的位置。从数学模型上看,和TOA算法类似,只是获取距离的方式不同。场强算法虽然简单,但是由于多径效应的影响,定位精度较差。

6.混合定位混合定位就是同时使用两种以上的定位方法来进行定位。通过各种定位方法之间结合使用,互补短长,以达到更高的定位精度。
A-GPS定位(辅助GPS定位)就是一种混合定位,是GPS定位技术与GSM网络的结合。A-GPS具有很高的定位精度,目前正被越来越广泛的使用。

这篇关于基站定位技术原理的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Spring Security 单点登录与自动登录机制的实现原理

《SpringSecurity单点登录与自动登录机制的实现原理》本文探讨SpringSecurity实现单点登录(SSO)与自动登录机制,涵盖JWT跨系统认证、RememberMe持久化Token... 目录一、核心概念解析1.1 单点登录(SSO)1.2 自动登录(Remember Me)二、代码分析三、

springboot自定义注解RateLimiter限流注解技术文档详解

《springboot自定义注解RateLimiter限流注解技术文档详解》文章介绍了限流技术的概念、作用及实现方式,通过SpringAOP拦截方法、缓存存储计数器,结合注解、枚举、异常类等核心组件,... 目录什么是限流系统架构核心组件详解1. 限流注解 (@RateLimiter)2. 限流类型枚举 (

Python实现PDF按页分割的技术指南

《Python实现PDF按页分割的技术指南》PDF文件处理是日常工作中的常见需求,特别是当我们需要将大型PDF文档拆分为多个部分时,下面我们就来看看如何使用Python创建一个灵活的PDF分割工具吧... 目录需求分析技术方案工具选择安装依赖完整代码实现使用说明基本用法示例命令输出示例技术亮点实际应用场景扩

在MySQL中实现冷热数据分离的方法及使用场景底层原理解析

《在MySQL中实现冷热数据分离的方法及使用场景底层原理解析》MySQL冷热数据分离通过分表/分区策略、数据归档和索引优化,将频繁访问的热数据与冷数据分开存储,提升查询效率并降低存储成本,适用于高并发... 目录实现冷热数据分离1. 分表策略2. 使用分区表3. 数据归档与迁移在mysql中实现冷热数据分

怎样通过分析GC日志来定位Java进程的内存问题

《怎样通过分析GC日志来定位Java进程的内存问题》:本文主要介绍怎样通过分析GC日志来定位Java进程的内存问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、GC 日志基础配置1. 启用详细 GC 日志2. 不同收集器的日志格式二、关键指标与分析维度1.

Java进程异常故障定位及排查过程

《Java进程异常故障定位及排查过程》:本文主要介绍Java进程异常故障定位及排查过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、故障发现与初步判断1. 监控系统告警2. 日志初步分析二、核心排查工具与步骤1. 进程状态检查2. CPU 飙升问题3. 内存

从原理到实战深入理解Java 断言assert

《从原理到实战深入理解Java断言assert》本文深入解析Java断言机制,涵盖语法、工作原理、启用方式及与异常的区别,推荐用于开发阶段的条件检查与状态验证,并强调生产环境应使用参数验证工具类替代... 目录深入理解 Java 断言(assert):从原理到实战引言:为什么需要断言?一、断言基础1.1 语

MySQL中的表连接原理分析

《MySQL中的表连接原理分析》:本文主要介绍MySQL中的表连接原理分析,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、背景2、环境3、表连接原理【1】驱动表和被驱动表【2】内连接【3】外连接【4编程】嵌套循环连接【5】join buffer4、总结1、背景

深度解析Spring AOP @Aspect 原理、实战与最佳实践教程

《深度解析SpringAOP@Aspect原理、实战与最佳实践教程》文章系统讲解了SpringAOP核心概念、实现方式及原理,涵盖横切关注点分离、代理机制(JDK/CGLIB)、切入点类型、性能... 目录1. @ASPect 核心概念1.1 AOP 编程范式1.2 @Aspect 关键特性2. 完整代码实

Java Stream的distinct去重原理分析

《JavaStream的distinct去重原理分析》Javastream中的distinct方法用于去除流中的重复元素,它返回一个包含过滤后唯一元素的新流,该方法会根据元素的hashcode和eq... 目录一、distinct 的基础用法与核心特性二、distinct 的底层实现原理1. 顺序流中的去重