开发者

如何实现较近距离时才触发事件?

iBeacon 的信号强度已经调节到最低了,但还是在几米外就有信号。如果我想实现一个近距离才能触发事件的效果,要怎么实现?

这里有几种解决方案:

1. 通过判断 iBeacon 的 RSSI 值,如果某个 iBeacon 信号覆盖范围为 30 米,在它 1 米处检测到的信号是 -50,3 米时是 -70。这时我们可以判断当 iBeacon 信号强度大于-50时才触发,就可以实现近距离才触发事件的效果了。

2. 通过 KVO 监听 Proximity 值,来进行判断。Apple 为 iBeacon 设定了 4 个范围值:Unknown(未知), Immediate(1米以内), Near(1-3米), Far(很远)。我们只要 KVO 的方式监听 iBeacon 的Proximity 值,当 Proximity 值变为 Immediate 时在触发对应的动作。KVO 实现方式参照 Github

3. 通过调整 iBeacon 设备的功率,当功率调整到较低的状态时,云子信号的覆盖范围会随之变小。这种方式的优点是开发简单,只需要修改硬件功率就可以满足改变覆盖范围的需求。缺点是范围可调性差只能是几个固定的值,同时将发射功率改小,对于 iBeacon 的巡检与监控都会带来麻烦。目前不建议将 iBeacon 设备功率修改过低。

 

如何利用 iBeacon 进行消息推送?

首先,iBeacon 设备只是一个以一定频率不断向外界广播自身 ID 的 BLE 设备。Apple 对 iBeacon 提供了一些

系统级的支持,如果在 iOS App 中监听了某一个特定的 iBeacon,当用户持手机走进 iBeacon 信号覆盖范围内时,应用就会被唤醒。

我们通常说的 iBeacon 可以进行推送,其实是需要 App 进行配合的。

目前推送的实现逻辑有几种:

  1. 用户进入 iBeacon 覆盖范围 -> 应用被唤醒 -> 应用通知云端 -> 云端通过 Remote Notification 向用户推送内容。

     优点:推送内容实时性,自定义程度高,可手动推送内容  
     缺点:网络条件要求高,需要推送服务相关的私钥
    
  2. 用户进入 iBeacon 覆盖范围 -> 应用被唤醒 -> 应用请求云端数据 -> 应用发送 Local Notification 向用户推送内容。

     优点:推送内容实时性,自定义程度高,不需要私钥文件  
     缺点:网络条件要求高
    
  3. 用户进入 iBeacon 覆盖范围 -> 应用被唤醒 -> 应用查看本地缓存推送内容 -> 应用发送 Local Notification 向用户推送内容。

     优点:不需要私钥文件  
     缺点:推送内容实时性较差
    
  4. 应用注册 iBeacon 绑定的推送内容 -> 用户进入 iBeacon 覆盖范围 -> 用户收到推送。

     优点:需要iOS8系统支持,不需要私钥文件,系统级服务稳定性高  
     缺点:推送内容实时性较差
    

总结

iBeacon 自身只是一个简单的广播设备用来标识一个区域。消息推送功能是 App 监听进入 iBeacon 通过触发的事件来实现的。利用本地缓存进行推送,比较适合于网络条件较差,推送成功率要求较高的需求。通过网络实时请求推送内容,比较适合于网络条件较好、对内容实时性要求较高的服务。

在选择解决方案时,我们还是要考虑实际的使用情况来选择最优的实现方案。

想要用云子来做室内定位,要怎么做?

利用云子可以进行多种不同方式的定位,或综合多种方式以满足业务需求。

一,合理密度地部署多个云子并调整信号覆盖范围,以云子本身的位置作为定位位置,推荐使用这种方式;
二,根据 RSSI 强度进行云子的单点距离定位。其中较为精确的是指纹算法方案;
三,通过三个或更多个进行三点定位。

我们在会逐步提供相关文档。

我获得的 RSSI 在波动,为啥?

由于 iBeacon 使用的是蓝牙技术,蓝牙使用的是 2.4G 无线广播频段。会受到环境因素的干扰,导致接收到的信号的强度产生波动。RSSI 是接收信号强度的数值,直接反映信号强度的波动。您可以通过扩大采样窗口减少波动。

云子的传感器数据怎样才能获取?

通过 SDK 可以获取 iBeacon 的传感器数据,相应可以获取的值及方法,参考 iOS 与 Android 文档。

如何用云子唤醒 App?

在 iOS 中,系统在发现 iBeacon 时,会唤醒设定了 iBeacon 监测的程序。Android 需要有相关后台进程。

为什么云子测到的温度有偏差?

云子的温度传感器测量到的是芯片工作的温度,加上云子密闭的外壳,导致云子测到的温度与外围环境温度有一定偏差。

怎样防止别人修改自己的云子?

当您拿到的云子是开发者版本的话,默认是没有密码的,请您收到云子后尽快为云子设置密码,并妥善保存。设置了密码后,任何对云子的修改都需要验证密码。

光感节能的机制是什么?

当光感节能功能开启后,周围环境持续很暗(配置工具显示 0lux)1~2分钟后,云子就进入低频广播模式,以降低功耗,当环境变亮持续 5 秒后,云子就恢复为配置下的频率广播。

我拿到的新云子似乎电量不足,什么情况?

全新生产的云子在被用户第一次打开前处于休眠状态,通常电量不会少于 95%。

目前的电量估算方法以电压测量为基础,再根据电池放电曲线来估算剩余电量。下图为纽扣电池的典型放电曲线:

在刚工作时,电池的电压下降较快。这就是为什么新云子的电量显示很快会到 80% 左右,而实际电量消耗并不多。

另外,在云子进行耗电量大的工作(例如固件升级)之后,电池的电压会下降,而让电池休息一段时间之后电压会回升,使得显示电量略微回升。

如果发现开箱电量即少于 30%,请联系 客服

云子的参数我应该怎样去设置?

下载云子配置工具,有 Android 和 iOS 两个版本。

云子的默认参数便可以很好地进行工作,如果您有明确需求,请相应调整参数。

云子的参数能够修改吗?

云子的工作参数可以通过配置工具进行修改。

如果您拥有 App 开发能力,可以嵌入 SDK 自主开发相应程序。

如何整合云子的 SDK?(iOS 和 Android)

请参考下面的链接。http://www.sensoro.com/docs/。

云子智能 iBeacons 射频天线性能测试

本测试对象为 Sensoro 云子智能 iBeacons

1、工作频点和带宽

2、天线空间全向辐射能力 (三维) 侧视图左、右
云子蓝牙射频天线辐射全向增益

3、天线空间全向辐射能力 (三维) 前视图和后视图
云子蓝牙射频天线辐射全向增益

4、天线辐射性能(俯视、二维图)

测试结果

1、天线工作频点符合蓝牙标准。

2、天线空间全向辐射能力优越于其他品牌 iBeacons。

3、相对于其他 iBeacons 硬件拥有更好的增益。

云子的电池容量有多大?能工作多久?

“云子”采用 CR2477 纽扣电池(1000mAh)。

1s 广播一次的情况下“云子”的计算估计工作时间大于 2 年(传感器关闭);

1s 广播一次的情况下“云子”的计算估计工作时间约 600 天(传感器工作);

iBeacon 的工作时间会受到广播频率的影响,广播频率越低,工作越久。

云子怎么换电池?

云子内配备了松下 CR2477 工业级纽扣电池。由于更换电池可能会破坏云子的三防(防水、防尘、防震)特性,因此不允许更换电池。

云子•凝配备了 CR2032 工业级电池,可通过硬币等工具旋开云子•凝底盖,进行电池替换工作。

我要实现室内定位,RSSI 与距离是什么关系?

iBeacon 的初衷是在室内触发某项特定事件,但也可用于实现室内定位的功能。

您可以通过 RSSI 与距离的关系公式计算出手机与 iBeacon 之间的距离。需要注意的是距离计算公式在近距离是较为准确,当距离越远,由于电磁波的多径效应、信号干扰、人物遮挡等影响,计算得到的距离的准确度会下降。另外还可以利用三角等位、指纹算法等增加定位精度,需要开发者自行深入探索。

不同广播频率和信号发射功率情况下的电池工作时间是多久?

电池电量参考表(单位:天)

发射功率\广播间隔+4dBm0dBm-8dBm-12dBm-30dBm
100ms 105 126 138 146 152
152.5ms 156 185 203 215 223
211.25ms 211 249 271 286 297
318.75ms 301 353 382 402 416
417.5ms 378 438 473 497 513
546.25ms 467 538 578 604 622
760ms 596 677 722 752 772
852.5ms 645 729 776 806 827
1022.5ms 727 815 864 895 916
1285ms 836 928 977 1009 1031

“云子”里面都有些什么传感器?精度怎样?

“云子” 只能 iBeacon 中设计有环境光传感器、加速度传感器(重力感应)和温度传感器,通过  Sensoro 的精巧设计,您的手机在无需进行蓝牙连接即可轻松获取各项传感数据。

1 环境光传感器

  光感知范围0.045 Lux to 188,000 Lux(勒克斯)

  0.65μA工作电流

2 加速度计(重力感应器)

  最大加速度探测范围:+-16g

  最高测量精度:0.06mg

3 温度传感器

  温度传感器可以让您获取 iBeacon 自身的温度信息

为什么云子的广播频率值那么奇怪,依据是什么?

云子的广播频率是根据苹果官方的 蓝牙开发指南 的推荐值来选取的: