蓝牙Ibeacon室内定位和微信摇一摇周边原理分析
苹果推出Ibeacon室内定位技术是为了弥补GPS无法覆盖室内定位这种场景。苹果意味着创新,在其推动下,蓝牙Ibeacon得到了极大的应用。而腾讯则是利用蓝牙Ibeacon在场景体验方面进行了创新,实现了微信摇一摇周边的功能,这在O2O领域有巨大的潜力。
对苹果和腾讯来说,Ibeacon都是应用创新,而不是技术创新。
本文分析Ibeacon室内定位和微信摇一摇的原理。
一、无线测距原理
无线信号都有一个信号强度(RSSI),蓝牙BLE自然也有。根据蓝牙BLE自身的发射功率(假设能够获取这个功率值)和无线信号接收端的RSSI,可以计算出两者的距离。
D =10^((abs(RSSI)-A)/(10*n)
D是计算距离,RSSI是信号强度,A为发射端和接收端相隔1米时的信号强度,n是环境衰减因子。对于不同的蓝牙设备该值是不一样的,同样的设备在不同的发射功率的情况下其信号强度也是不一样的,而且对于同是1米的情况下,环境对于信号强度也是有影响的。n是环境衰减因子,自然跟环境有关。n一般取经验值。
实际的算法编程是:
二、定位原理
其实这个原理很简单,小学的知识:两边长可以确定第三个点。
A和B是两个已知经纬度的坐标点,待测点计算出跟A和B的距离,自然就可以确定自身的坐标点。具体的算法就自行研究去吧。
三、苹果Ibeacon室内定位
其实就是在A和B点各放置一个ibeacon,然后手机进入ibeacon的广播范围即可以通过算法计算出自己的坐标。
这里需要一个前提,就是ibeacon室内定位是一个应用APP,应用是已经知道A和B的经纬度坐标的,该应用其实是一个地图应用来的,装有APP的手机进入A和B的信号覆盖范围自然就可以在地图上标记自己的位置。
室内定位在停车场和商场里面有极好的应用前景。
四、蓝牙ibeacon原理
苹果推出的ibeacon是基于蓝牙BLE的,其实ibeacon未来不见得就一定以蓝牙为载体,理论上,无线设备都可以,但是一定要手机集成支持的,否则就失去意义了。现在手机除了蓝牙就是wifi了,wifi功耗太大,不符合ibeacon长时间工作的要求。所以目前就只有蓝牙ibeacon应用了。
蓝牙通信有广播和连接两种通信模式。Ibeacon只利用广播这种方式,当然,如果要更新ibeacon的广播内容是需要建立连接并通信的。
蓝牙BLE广播的有效载荷payload是最长31字节,苹果约定一种前缀来标识ibeacon,并固定使用30字节。格式如下:
1)ibeacon prefix 9字节: 02 01 06 1A FF 4C 00 02 15
2)proximity UUID 16字节: 区分不同设备厂商生产的ibeacon
3)Major 2字节:区分不同商店的ibeacon
4)Minor 2字节:区分同一家商店的不同位置的ibeacon
5)TX power 1字节:发射功率,用于计算距离。
五、微信摇一摇周边
这个场景是指当你走到商家门前时,你开启蓝牙,并用微信摇一摇周边,那么你可以摇到优惠券和广告等信息。这在O2O领域是应用最广泛的。
Ibeacon英文是信标的意义,在室内定位里面意义非常明确。但是在微信摇一摇周边里面其实信标的意义比较牵强,腾讯完全可以自定义一个微信摇一摇周边的prefix,然后不用ibeacon的约定。不过,腾讯这样改也没啥意思,苹果的推动导致市面上那么多ibeacon,腾讯就沿用好了。话说回来,对于商家来说,ibeacon还是有定位意义的,因为微信摇一摇周边的后台接口能够统计处某个具体位置的ibeacon被多少用户摇到了,例如前门放一个,后门放一个,多少人走过摇一摇是知道的。
摇一摇周边就不用计算距离啦,它的工作过程是这样的:
1)商家的微信后台申请ibeacon设备的UUID、Major和Minor。
2)商家购买ibeacon设备,并请求设备上将1)中的UUID、Major和Minor配置到设备中,或者通过特定的应用更新到设备中。
3)商家配置摇一摇周边的结果页面,如优惠券信息,也可以是关注页面。其实就是H5,也可以利用摇一摇周边的JSAPI。
4)商家将设备和结果页面绑定。
5)商家将设备放到某个位置。
6)用户走进,摇一摇周边,微信应用会获取UUID、Major和Minor,并通过后台获取到对应的结果页面的链接,显示给用户。
7)用户点击链接,内置浏览器打开,就可以看到优惠券等信息了。
技术咨询、蓝牙模组咨询可以发邮件到yqwucheng@163.com.
百分百原创,每周两篇,阿里、魅族、nvidia、龙芯、炬力、拓尔思等顶级企业资深工程师分享----嵌入式、Linux、物联网、GPU、Android、自动驾驶等技术,欢迎扫码关注微信公众号:嵌入式企鹅圈,实时推送原创文章!
蓝牙Ibeacon室内定位和微信摇一摇周边原理分析的更多相关文章
- iBeacon室内定位原理解析【转】
目前,技术发展持续火热,因着iBeacon的定位精度和造价都比较符合国内室内定位的市场需求,下面我们来聊一聊iBeacon室内定位原理. iBeacon定位原理 iBeacon是一项低耗能蓝牙技术,工 ...
- 解答室内定位技术新方向:蓝牙AoA定位,值得了解 ——概念了解
转载搜狐 室内定位一直被炒的非常火的黑科技,也是近年资本追逐的热点,市场上一直有众多宣称可以做到厘米级,米级精度定位的公司,但问题很多,无法大规模商用.近些年有很多人尝试使用蓝牙beacon方式做定位 ...
- C#开发微信门户及应用(28)--微信“摇一摇·周边”功能的使用和接口的实现
”摇一摇周边“是微信提供的一种新的基于位置的连接方式.用户通过“摇一摇”的“周边”页卡,可以与线下商户进行互动,获得商户提供的个性化的服务.微信4月份有一个赠送摇一摇设备的活动,我们有幸获得赠送资格, ...
- [蓝牙前沿应用] 照明即平台 —— 通过蓝牙增强服务提高照明投资回报率(蓝牙MESH、定位AoA、AoD)
1.照明即平台(LAAP) 随着照明设施向LED转型,他们也在利用类似于蓝牙MESH的技术,创建一个可连接的照明平台,作为他们建筑的中枢神经系统.这些系统除了提供先进的照明控制,还建立了一个增强版 ...
- 微信“摇一摇·周边”正式开放
今日,在微信公开课第三季长沙站现场,微信团队宣布“摇一摇·周边”(以下简称“摇周边”)正式对外开放.拥有微信认证的公众帐号商户,均可通过摇周边的商户申请平台(https://zb.weixin.qq. ...
- webgl(three.js)实现室内定位,楼宇bim、实时定位三维可视化解决方案
(写在前面,谈谈物联网展会)上次深圳会展中心举行物联网展会,到了展会一看,80%以上的物联网应用都是在搞RFID,室内定位,我一度怀疑物联网落地方案的方向局限性与市场导向,后来多方面了解才明白,展会上 ...
- 室内定位系列(一)——WiFi位置指纹(译)
原文:<Advanced Location-Based Technologies and Services>--chapter 2 WiFi Location Fingerprint 作者 ...
- H5地理位置信息、微信摇一摇
geolocation window.navigator.geolocation 1.getCurrentPosition() // 获取当前的位置信息 2.watchPosition() // 监视 ...
- 【机器学习】WIFI室内定位
WIFI室内定位-指纹法 在A1区域内每个点上采集四个WiFi的信号数据(信号强度),五点.九点.十六点采样. 5*5=25区域*16数据=400样本,用来训练 样本数 R B G1 G2 1 2 ...
随机推荐
- 找工作--Java相关
Hi 各位 首先自我描述一下,80后程序员,现在在做Eclipse插件开发. 求Java相关职位(Java/Swing/Eclipse Plugin/Python etc), 或者Linux下C相关职 ...
- [Tango] Basic Knowledge
Project Tango类设备能够给开发者在哪些领域带来机会. 室内导航*:室内GPS信号的缺失,使得Project Tango设备会成为室内导航重要应用场景之一.有了它,你就不会在不熟悉的室内商场 ...
- 3、使用Oracle Logminer同步Demo
使用Oracle Logminer同步Demo 1 Demo介绍 1.1 Demo设想 前面介绍了Oracle LogMiner配置使用以及使用LogMiner进行解析日志文件性能,在这篇文章中将利用 ...
- 1、图解Oracle Logminer配置使用
LogMiner配置使用手册 1 Logminer简介 1.1 LogMiner介绍 Oracle LogMiner 是Oracle公司从产品8i以后提供的一个实际非常有用的分析工具,使用该工具可以轻 ...
- JS&CSS文件请求合并及压缩处理研究(三)
上篇我们进行了一些代码方面的准备工作.接下来的逻辑是:在View页面解析时,通过 Html.AppendResFile 方法添加的资源文件,我们需要按照分组.优先级,文件名等条件,对其路径进行合并.具 ...
- angularJs自定义服务
在AngularJS中,系统内置的服务都是以$开头,所以我们的自定义服务尽量避免以$开头.自定义服务的方式有如下几种: 使用Module的provider方法 使用Module的factory方法 使 ...
- 30 分钟快快乐乐学 SQL Performance Tuning
转自:http://www.cnblogs.com/WizardWu/archive/2008/10/27/1320055.html 有些程序员在撰写数据库应用程序时,常专注于 OOP 及各种 fra ...
- Web前端面试题集锦
前端开发面试知识点大纲: 注意 转载须保留原文链接(http://www.cnblogs.com/wzhiq896/p/5927180.html )作者:wangwen896 HTML&CSS ...
- 环信SDK与Apple Watch的结合(1)
该系列是记录在apple watch上开发IM,用到了最近挺流行的环信IM SDK. 一.先来一段网上随处可查到的信息: 1.两种分辨率 1.65寸 312*390 1.5寸 272*340 2.开发 ...
- sql 两列相加存到另一列
假设表table1有a.b两个列,想生成另一个列为a列值+b列值计算列添加语句如下ALTER TABLE table1ADD c AS a+b