自从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. VC ++ 后台消息模拟

    —HWND TO=; —//TO=::FindWindow(_T("Chrome_RenderWidgetHostHWND"),NULL); —TO=::FindWindow(_T ...

  2. gcc 编译和链接

    1.现在对两个文件生成可执行文件 //thanks.c #include <stdio.h> int main(void) { printf("Hello World\n&quo ...

  3. sql中Statement与PreparedStatement的区别

    1.Statement用于执行静态sql语句,在执行时,必须指定一个事先准备好的sql语句,也就是说sql语句是静态的. 2.PrepareStatement是预编译的sql语句对象,sql语句被预编 ...

  4. .offset()与.position()区别

    jQuery中有两个获取元素位置的方法offset()和position(),两者的定义如下:   offset():获取匹配元素在当前视口的相对偏移.返回的对象包含两个整形属性:top 和 left ...

  5. vb combobox 用法问题总结

    问题一 combobox 通过type类型,如下代码,通过选取name名称(改变combobox的名称)得到 其Id Type User id As Integer userName As Strin ...

  6. Deep Learning for Natural Language Processing1

    Focus, Follow, and Forward Stanford CS224d 课程笔记 Lecture1 Stanford CS224d 课程笔记 Lecture1 Stanford大学在20 ...

  7. 论山寨手机与Android 【14】3G SmartPhone时代的MTK

    分析了SmartPhone的里里外外以后,现在我们可以分析MTK的机遇和挑战了.MTK面临的外部环境在发生变化,变化有两条,一是移动网络从2G演变到3G,二是手机由FeaturePhone演化到Sma ...

  8. Java IO读写中文各种乱码问题 【转】

    Java IO读写中文各种乱码问题 转自:http://blog.sina.com.cn/s/blog_484ab56f0101muzh.html java.io.*读写中文各种乱码,很费劲.不完全解 ...

  9. java快速排序1000万无序数组JVM-Xmx=256M 耗时2s

    自己动手写排序算法,快速排序是比较不好写的了~ import java.util.*; class Test{ public void quickSort(int[] arr,int low,int ...

  10. python升级导致的坑

    问题来源 问题往往都是这样来的突然,让我措手不及. 小孩没娘说来话长啊,操作系统是centos6.5因此默认自带的python是2.6.6的,突然有一天我要写一个关于kafka topic消费情况的监 ...