http://club.1688.com/article/33352102.html
1.簡介
BLE(Bluetooth Low Energy,低功耗藍牙)是對傳統藍牙BR/EDR技術的補充。盡管BLE和傳統藍牙都稱之為藍牙標准,且共享射頻,但是,BLE是一個完全不一樣的技術。BLE不具備和傳統藍牙BR/EDR的兼容性。它是專為小數據率、離散傳輸的應用而設計的。通信距離上也有改變,傳統藍牙的傳輸距離幾十米到幾百米不等,BLE則規定為100米。
2.低功耗藍牙(BLE)
低功耗藍牙分為單模(Bluetooth Smart)和雙模(Bluetooth Smart Ready)兩種設備。BLE和藍牙BR/EDR的區分,讓我們有三種方式將藍牙技術集成到具體設備中。下表中示意了兩個藍牙設備之間的通信方式。因為不再是所有現有的藍牙設備可以和另一個藍牙設備進行互聯,所以,准確描述產品中藍牙的版本非常地重要。
2.1 單模藍牙
單模藍牙設備被稱為Bluetooth Smart設備,並且有專用的logo:
諸如手表、運動傳感器等這樣小型的設備會基於單模藍牙低功耗。為了實現極低的功耗,硬件和軟件上都做了優化。這樣的設備只能支持BLE。單模藍牙芯片往往是一個帶有單模藍牙協議棧的產品,這個協議棧是芯片商免費提供的。
2.2 雙模藍牙
雙模藍牙設備被稱為Bluetooth Smart Ready設備,並且有專用的logo:
雙模設備支持藍牙BR/EDR和BLE。在雙模設備中,這兩個技術使用同一個射頻前端和天線。典型的雙模設備有智能手機、平板電腦、PC和Gateway。這些設備可以收到通過BLE或者藍牙BR/EDR設備發送過來的數據,這些設備往往都有足夠的供電能力。雙模設備和BLE設備通信的功耗低於雙模設備和藍牙BR/EDR設備通信的功耗。雙模解決方案需要一個外部處理器才足以實現藍牙協議棧。
3.應用
BLE適合用於電池驅動的小型設備,有以下五個主要的市場。
3.1醫療和健康
那些用於監測重要的生理數據的醫療設備是BLE在醫療健康市場中應用的對象。典型的設備有血糖儀、血壓計和血氧計。BLE被康體佳健康聯盟(Continua Health Alliance)選定為終端產品通信的兼容傳輸技術。
3.2運動和健身
在運動和健身領域,BLE適合用於定位,同時也上傳一些重要的監測數據。典型的設備有心率監測儀、體溫計、計步器、節拍器、測高儀、定位器和通過手表顯示來自傳感器的信息。
3.3工業
在自動化應用領域中,BLE主要用於傳輸I/O信號。BLE可以用於監測和控制馬達、制動器、參數和整個過程。
3.4娛樂
在娛樂領域,BLE已經被眾多的設備采用,比如機頂盒、游戲機等。預計BLE會是的在TV / DVD / STB / Media播放器、遙控、游戲控制手柄及無線鍵鼠等設備中的藍牙應用不斷擴大。
3.5智能家居
BLE可以提供燈光控制、溫度控制、濕度控制、安全鎖控制、門窗控制的低功耗、高安全性解決方案。在智能儀表中的應用也是一個方向。
4.協議
BLE不在支持傳統藍牙BR/EDR的協議,如傳統藍牙中的SPP協議在BLE中就不復存在。作為替代,在BLE中所有的協議或者服務都是基於GATT(Generic Attribute Profile)的。盡管有些傳統藍牙中的協議,如HID被移植到了BLE中,但是在BLE的應用中,你必須區分清楚協議和服務。
服務描述了特點(及他們的UUID)。服務描述自身有什么特點和形式,並且描述清楚如何應用這些特點以及需要什么安全機制。
應用協議定義其使用的服務,說明是傳感器端還是接收端,定義GATT的角色(Server/Client)和GAP的角色(Peripheral/Central)。
相較於藍牙BR/EDR的協議,基於GATT的應用協議非常簡單,因為所有的功能都是集成在GATT終端,這些基於其上的應用協議只是對GATT提供的功能的使用。
下表列出了現有的基於GATT的協議/服務(07/2013):
GATT-Based Specifications (Qualifiable) |
Adopted Version |
|
ANP |
Alert Notification Profile |
1.0 |
ANS |
Alert Notification Service |
1.0 |
BAS |
Battery Service |
1.0 |
BLP |
Blood Pressure Profile |
1.0 |
BLS |
Blood Pressure Service |
1.0 |
CPP |
Cycling Power Profile |
1.0 |
CPS |
Cycling Power Service |
1.0 |
CSCP |
Cycling Speed and Cadence Profile |
1.0 |
CSCS |
Cycling Speed and Cadence Service |
1.0 |
CTS |
Current Time Service |
1.0 |
DIS |
Device Information Service |
1.1 |
FMP |
Find Me Profile |
1.0 |
GLP |
Glucose Profile |
1.0 |
HIDS |
HID Service |
1.0 |
HOGP |
HID over GATT Profile |
1.0 |
HTP |
Health Thermometer Profile |
1.0 |
HTS |
Health Thermometer Service |
1.0 |
HRP |
Heart Rate Profile |
1.0 |
HRS |
Heart Rate Service |
1.0 |
IAS |
Immediate Alert Service |
1.0 |
LLS |
Link Loss Service |
1.0 |
LNP |
Location and Navigation Profile |
1.0 |
LNS |
Location and Navigation Service |
1.0 |
NDCS |
Next DST Change Service |
1.0 |
PASP |
Phone Alert Status Profile |
1.0 |
PASS |
Phone Alert Status Service |
1.0 |
PXP |
Proximity Profile |
1.0 |
RSCP |
Running Speed and Cadence Profile |
1.0 |
RSCS |
Running Speed and Cadence Service |
1.0 |
RTUS |
Reference Time Update Service |
1.0 |
ScPP |
Scan Parameters Profile |
1.0 |
ScPS |
Scan Parameters Service |
1.0 |
TIP |
Time Profile |
1.0 |
TPS |
Tx Power Service |
1.0 |
5.技術特點
BLE的低功耗並非通過優化空中的無線射頻傳輸實現,而是通過改變協議的設計來實現。一般來說,為了實現極低的功耗,BLE協議設計為:在不必要射頻的時候,徹底將空中射頻關斷。與傳統藍牙BR\EDR相比,BLE有這三大特性,從而實現低功耗:縮短無線開啟時間、快速建立連接、降低收發峰值功耗(具體由芯片決定)。
縮短無線開啟時間的第一個技巧是只用3個“廣告”信道,第二個技巧是通過優化協議棧來降低工作周期。一個在廣告的設備可以自動和一個在搜索的設備快速建立連接,所以可以在3ms內完成連接的建立和數據的傳輸。
低功耗的設計會帶來一些犧牲,例如:音頻數據就無法通過BLE來進行傳輸。
BLE仍然是一種非常魯棒的技術。它依然支持跳頻(37個數據信道),並且采用了一種改進的GFSK調制方法來提高鏈路的穩定性。BLE也仍是非常安全的技術,因為在芯片級提供了128 bit AES加密。
單模設備可以作為Master或者Slave,但是不能同時充當兩種角色。這意味着BLE只能建立簡單的星狀拓撲,不能實現散射網。
BLE的無線電規范中定義了低功耗藍牙的最高數據率為305kbps,但是,這只是理論數據。在實際應用中,數據的吞吐量取決於上層協議棧。而UART的速度、處理器的能力和主設備都會影響數據吞吐能力。
高的數據吞吐能力的BLE只有通過私有方案或者基於ATT notification才能實現。事實上,如果是高數據率或高數據量的應用,藍牙BR/EDR通常顯得更加省電。
5.1 應用實例和優勢
BLE通常應用在傳感器和智能手機或者平板的通信中。到目前為止,只有很少的智能機和平板支持BLE,如:iPhone 4S以后的蘋果手機,Motorola Razr和 the new iPad 及其以后的iPad。安卓手機也逐漸支持BLE,安卓的BLE標准在2013年7月24日剛發布。智能機和平板會帶雙模藍牙的基帶和協議棧,協議棧中包括GATT及以下的所有部分,但是沒有GATT之上的具體協議。所以,這些具體的協議需要在應用程序中實現,實現時需要基於各個GATT API集。這樣有利於在智能機端簡單地實現具體協議,也可以在智能機端簡單地開發出一套基於GATT的私有協議。
在蘋果設備上使用BLE傳輸,尤其有其明顯的優勢。相比於藍牙BR/EDR,再也不需要使用經過蘋果授權的加密芯片,就不需要在加入MFi項目中去。
5.2 對比BLE和傳統藍牙BR/EDR技術
|
Bluetooth BR/EDR |
Bluetooth low energy |
Frequency |
2400-2483.5 MHz |
2400-2483.5 MHz |
Deep Sleep |
~80 μA |
<5 μA |
Idle |
~8 mA |
~1 mA |
Peak Current |
22-40 mA |
10-30 mA |
Range |
500m (Class 1) / 50m (Class 2) |
100m |
Min. Output Power |
0 dBm (Class 1) / -6 dBm (Class 2) |
-20 dBm |
Max. Output Power |
+20 dBm (Class 1) / +4 dBm (Class 2) |
+10 dBm |
Receiver Sensitivity |
≥ -70 dBm |
≥ -70 dBm |
Encryption |
64 bit / 128 bit |
AES-128 bit |
Connection Time |
100 ms |
3 ms |
Frequency Hopping |
Yes |
Yes |
Advertising Channel |
32 |
3 |
Data Channel |
79 |
37 |
Voice capable |
Yes |
No |
5.3 雙模協議棧
下圖是斯圖曼雙模協議棧BlueCode+SR的架構。在這個圖中,包含了SPP、HDP和GATT所需要的所有部分。
5.4 單模協議棧
下圖是單模協議棧的一種典型協議棧設計。在這樣的協議棧中一般不會包含具體協議,所以需要在具體的應用程序中實現每一個具體應用對應的協議。這和傳統藍牙有非常大的區別,傳統藍牙會在協議棧中實現每個具體應用相關的協議,如SPP、HDP等。
對比雙模協議棧,BLE無需一個主處理器來實現它的協議棧,所以極低功耗的集成成為可能。大多數的單模芯片或者模塊都是自帶協議棧的。
由於BLE單模產品(芯片或者模塊)中的協議棧只是實現了GATT層,所以通常需要將具體應用對應的協議集成到該單模產品之中。甚至芯片商都開始提供帶有具體協議和sample code的SDK。但是,仍然沒有真正能拿到手的解決方案。
6.集成方式
盡管有單模和雙模方案的區別,但是在您的設備中集成藍牙技術仍有多種方式。
6.1 模塊
最簡單和快速的方式是使用一個嵌入式模塊。這樣的模塊包含了天線、嵌入了協議棧並提供多種不同的接口:UART、USB、SPI和I²C,可以通過這些接口和您的處理器連接。模塊會提供一種簡單的接口來控制藍牙的功能。很多的模塊公司都會提供帶CE、FCC和IC認證的產品。這樣的模塊可以只是藍牙BR/EDR的,雙模式的或者單模式的。
如果是藍牙BR/EDR和雙模的方案,還可以采用HCI模塊。HCI模塊只是不帶藍牙協議棧,其他的和上述的模塊是一樣的。所以,這樣的模塊會更便宜。HCI模塊只是提供了硬件接口,在這樣的方案中,藍牙協議棧需要第三方提供。這樣的第三方協議棧需要能在主設備的處理器中運行,如斯圖曼提供的BlueCode+SR。使用HCI模塊需要將軟件移植到最終的硬件中。
理論上來說,提供單模的HCI模塊也是可以的。然而,所有的芯片公司都已經將GATT集成到他們的芯片中,所以市面上不會有HCI單模模塊出現(見5.4章節)。
6.2 芯片
通過芯片來集成BLE是從物料角度最低成本的方式,但是,這需要很多的前期工作和花費大量的時間。雖然在軟件上只需要將協議棧移植到目標平台之中即可,但是,硬件方面則需要對RF的layout和天線的設計非常有經驗。這些公司提供BLE芯片:Broadcom、CSR、EM Microelectronic、Nordic和TI。