自从Bluetooth SIG提出Bluetooth 4.0,其BLE(Bluetooth Low Energy)开始用于穿戴式电子,而后也用于iBeacon室内定位,更之后Bluetooth 4.1也锁定物联网(IoT),BLE(也称BT Smart)这项技术看来前程似锦。

BT Smart后势看好,ANT+看淡?

BLE用于穿戴式电子,首​​当其冲的是现存的无线通讯技术ANT+,笔者曾询问业者对BLE与ANT+的看法,业者认为现有ANT+阵营的业者成员(如TI、Nordic)也开始发展BT Smart的方案,估BT Smart后势看好,而看淡ANT+。

事实上多数人也认为BT Smart将取代ANT+,但ANT+阵营似乎仍有坚持,认为ANT+的技术表现并不输BT Smart,因此笔者尝试纯以技术规格的比较角度来检视,到底BT Smart与ANT+孰优孰劣?

ANT+仍有其优势

首先,先将平分秋色的部份一次说明完,而后再比较差异,ANT+与BT Smart均采2.4GHz频段,均采GFSK调变,传输率均约1Mbps,传输距离均约50公尺,两者均支援对等点对点(Peer-to-Peer),以及放射星状(Star)的连接型态(Topology)。

但在功耗方面ANT+具有优势,ANT+在初始、扫描网路状态较有效率,每次连线的传输较少,实际资料传量较大,整体而言约比BLE省25-50%用电。其次是网路连接型态,ANT+除P2P、Star外还支援树状(Tree)与随意网状(Mesh)。

此外BLE整个网路内只能有一个Master节点,其余节点均为Slave,但ANT+允许一个网路内有多个Master,作法上是以无线通讯的通道为区别,允许一个通道内有一个Master,但一个节点可以同时使用多个通道,在A通道上节点扮演Master角色,但在B通道上则扮演Slave角色。

相对地,BLE以节点为认定,该节点为Master,就不允许同一个网路还有其他Master,若同一网路内有两个Master则会有时序冲突。且为Master就是Master,角色不能变换。另外ANT+传输通道仅要1MHz频宽,BLE则需要2MHz。

ANT+在软体方面也有优势,以Android而言,ANT+允许同时多个应用程式存取同一个ANT+侦测,例如一个心跳侦测资讯可同时提供给多个Android应用程式取用。且ANT+的API采独立维护更新(以Plug-in外挂程式方式运作),任何版本的Andr​​oid均可支援ANT+,但BT Smart必须是Android 4.3版后才能支援。

BLE安全性更佳

虽然ANT+有诸多表现优于BLE,但并非全面获胜,例如传输加密方面,ANT+仅有64位元金钥加密,BLE则是128位元AES演算加密,若有敏感资讯需要传递BLE较为安全。

另也有表现不易分出胜负,例如单一网路内的最大节点数,ANT+约可到50个节点(理论65,536个,有型录记载为300个),BLE方面没有明确规范,但必然多过传统古典蓝牙(Classic Bluetooth)的7个。且最大节点数的比较有时不太实际,有时受限于主控晶片内的记忆体容量而无法支援到最大节点数,如部份初阶主控晶片仅能支援4个Slave节点。

而前述的传输加密方面,传输加密在部份晶片上是不具备的,或为选用功效,同时也有业者为ANT+晶片提出128位元AES演算加密,不一定采行64位元金钥加密。事实上业者已倾向推行同时支援ANT+与BLE的晶片,让系统业者自行选择启用哪种功效。

ANT+也要拓展市场

除技术外,最后也了解其应用与商业发展,近期ANT+已不再坚守穿戴式电子(含脚踏车、健身车等)领域,开始拓展其应用范畴,包含电表、汽车的胎压感测器(Tire Pressure Monitor Systems, TPMS)等,5月份也宣布投入家庭自动化应用。

而商业上也有业者支持ANT+,如Samsung(Galaxy S3/4/5智慧手机)、Sony Xperia Z1、2月份联发科也支援(MT6630晶片)等。而ANT+于2007年便开始,BLE于2010年开始,2010年ANT+装置已累积出货达1,000万个,看来两者仍要一段时间才能分出胜负。

BT Smart vs ANT+ 技术孰优孰劣?的更多相关文章

  1. IT编程培训,线上线下,孰优孰劣

    现在Java培训机构确实参差不齐,主要有在线培训和线下培训两大类: 1,虚拟和现实的区别:不论视觉,听觉,体验上在线教学都不如线下教学. 2,学费问 题:在线教学由于成本低,不受地域,教学设备限制一般 ...

  2. 终极对决!Dubbo 和 Spring Cloud 微服务架构到底孰优孰劣

    标签: 微服务dubbospring架构 前言 微服务架构是互联网很热门的话题,是互联网技术发展的必然结果.它提倡将单一应用程序划分成一组小的服务,服务之间互相协调.互相配合,为用户提供最终价值.虽然 ...

  3. 【Pandas vs SQL】数据分析代码逐行比对,孰优孰劣?

    在数据分析领域,pandas是python数据分析基础工具,SQL是数据库最常用分析语言.二者有相通的地方,也有很大的语法不同,做起数据分析来,谁将更胜一筹呢? 做过业务开发.跟数据库打交道比较多的小 ...

  4. 编程的宗派(OOP与FP孰优孰劣)--王垠

    编程的宗派 总是有人喜欢争论这类问题,到底是"函数式编程"(FP)好,还是"面向对象编程"(OOP)好.既然出了两个帮派,就有人积极地做它们的帮众,互相唾骂和鄙 ...

  5. 孰优孰劣?Dubbo VS Spring Cloud性能测试大对决!

    最近我们试图从Dubbo迁移到Spring Cloud.为此对二者分别进行了性能测试.为了得出数据量不同的情况下的二者的性能表现,我们分别准备了一个25个属性pojo对象和一个50个属性的pojo对象 ...

  6. 实时流处理Storm、Spark Streaming、Samza、Flink孰优孰劣

    对于一个成熟的消息中间件而言,消息格式不仅关系到功能维度的扩展,还牵涉到性能维度的优化.随着Kafka的迅猛发展,其消息格式也在不断的升级改进,从0.8.x版本开始到现在的1.1.x版本,Kafka的 ...

  7. ++i和i++的效率孰优孰劣

    在内建数据类型的情况下,效率没有区别: 在自定义数据类型的情况下,++i效率更高! 分析: (自定义数据类型的情况下) ++i返回对象的引用: i++总是要创建一个临时对象,在退出函数时还要销毁它,而 ...

  8. Jmeter和Postman做接口测试的区别,孰优孰劣?

    区别1:用例组织方式 不同的目录结构与组织方式代表不同工具的测试思想,学习一个测试工具应该首先了解其组织方式. Jmeter的组织方式相对比较扁平,它首先没有WorkSpace(工作空间)的概念,直接 ...

  9. 浅尝key-value数据库(二)——MongoDB的优与劣

    浅尝key-value数据库(二)——MongoDB的优与劣 MongoDB的名字取自英文单词"humongous"的中间五个字母,是一个C++开发的基于分布式文件存储的数据库开源 ...

随机推荐

  1. Remove Element,Remove Duplicates from Sorted Array,Remove Duplicates from Sorted Array II

    以下三个问题的典型的两个指针处理数组的问题,一个指针用于遍历,一个指针用于指向当前处理到位置 一:Remove Element Given an array and a value, remove a ...

  2. 图片与文字在div里实现垂直水平都居中

    第一种方法,利用盒布局实现   <style type="text/css">/*盒布局实现图片与文字水平垂直居中*/ .div1{ width: 100%; heig ...

  3. 互联网大公司的CEO,多是程序员出身

    互联网有个现象,大公司的CEO,多是程序员出身.举例如下:------马化腾93年深大计算机系毕业,进入润迅通信从软件工程师做到开发部主管,98年11月与张志东等凑齐50万元注册腾讯公司,99年2月开 ...

  4. Android Studio 实时显示布局文件Preview窗口

    Android Studio的功能包含preview窗口, 可以查看布局(layout)的样式; 位置:app->src->main->res(资源)->layout(布局), ...

  5. mysql_config_editor程序的用法

    1.mysql_config_editor程序的作用: 它只是用来在用户的家目录下生成一个.mylogin.cnf 里面保存有用于登录mysql-server端的password,host,user信 ...

  6. 为啥都不用Qt Quick Controls 2呢

     为啥都不用Qt Quick Controls 2呢  https://github.com/qt/qtquickcontrols2/ 

  7. 动态规划——数字三角形(递归or递推or记忆化搜索)

    动态规划的核心就是状态和状态转移方程. 对于该题,需要用抽象的方法思考,把当前的位置(i,j)看成一个状态,然后定义状态的指标函数d(i,j)为从格子出发时能得到的最大和(包括格子本身的值). 在这个 ...

  8. matlab 矩阵

    假设矩阵A=[1 3;4 2] 1.对角置零: A-diag(diag(A)) 2.求A的特征值以及特征向量: 用到eig(A)函数,此函数有五种用法,如下: 2.1 E=eig(A):求矩阵A的全部 ...

  9. 在asp.net中如何实现伪静态页 [转]

    我在这里就不过多讨论静态页.伪静态页.动态页的长短利弊了.只是单纯的讲解如何在asp.net中如何实现伪静态页,以帮助有这方面有需求的朋友,快速解决boss派下来的任务.(拿奖金的时候,记得有我一份功 ...

  10. [原理][来源解析]spring于@Transactional,Propagation.SUPPORTS,以及 Hibernate Session,以及jdbc Connection关联

    Spring 捆绑Hibernate. 夹: 一.  1. Spring 怎样处理propagation=Propagation.SUPPORTS? 2. Spring 何时生成HibernateSe ...