自从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. console.log几个小知识

    <script> //百度的console console.log('一张网页,要经历怎样的过程,才能抵达用户面前?\n一位新人,要经历怎样的成长,才能站在技术之巅?\n探寻这里的秘密:\ ...

  2. POJ 1052 Plato's Blocks

      Plato's Blocks Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 734   Accepted: 296 De ...

  3. 4x4矩阵键盘扫描

    4x4矩阵键盘扫描 Windows 10 IoT Core 是微软针对物联网市场的一个重要产品,与以往的Windows版本不同,是为物联网设备专门设计的,硬件也不仅仅限于x86架构,同时可以在ARM架 ...

  4. WampServer下如何实现多域名配置

    原文:WampServer下如何实现多域名配置 之前在学习跨域的时候,我写过一篇叫做WampServer下使用多端口访问的文章,默认的 localhost 采用的是 80 端口,能使用多端口访问的核心 ...

  5. Android 微信分享信息

    随着微信越来越火,越来越多的应用要求有分享到微信的功能.虽然有很多平台都帮集成有分享功能,比如友盟.但是个人觉得友盟集成的东西太多了,自己封装得太过分了,很多资源文件也要带进去,所以感觉不是怎么好,所 ...

  6. uvalive 6657 GCD XOR

    //感觉太长时间没做题 好多基本的能力都丧失了(>_<) 首先大概是这样的,因为gcd(a,b)=c,所以a,b都是c的倍数,所以我们依次枚举a的值为2c 3c 4c......,a xo ...

  7. 判断一个字符串中是否包含另一个字符串(KMP、BF)

    判断一个字符串是否是另一个字符串的子串,也就是strstr()函数的实现,简单的实现方法是BF算法. 1.BF算法 int BF(char *s, char *p){ ; ; int j; while ...

  8. linux 学习之七-部分ssh命令

    ssh命令 /etc/init.d/sshd restart|start|stop   重启|开始|关闭SSH的服务 ssh IP地址 连接SSH Linux scp命令用于Linux之间复制文件和目 ...

  9. The MySQL C API 编程实例

    在网上找了一些MYSQL C API编程的文章,看了后认为还是写的不够充分,依据自己经验写了这篇<The MySQL C API 编程实例>,希望对须要调用到MYSQL的C的API的朋友有 ...

  10. 黑马程序员 Java基础<十八>---> 网路编程

    --------------- ASP.Net+Android+IO开发S..Net培训.期待与您交流! --------------- 第一  概述 一.概述: 1.网络模型:OSI参考模型和TCP ...