低能耗藍牙被業(yè)界廣泛認為是實現(xiàn)物聯(lián)網(wǎng)(IoT)應(yīng)用愿景的關(guān)鍵技術(shù)。事實上,極低的功耗使其成為電池供電的物聯(lián)網(wǎng)產(chǎn)品最理想的無線通信解決方案,盡管目前低能耗藍牙技術(shù)規(guī)范還是局限于幾種特定應(yīng)用,但是,創(chuàng)新的解決方案可促使這項技術(shù)拓展到不同的應(yīng)用領(lǐng)域,例如,多媒體流。按照這個發(fā)展方向,本文介紹一個叫做 BlueVoice的低能耗藍牙設(shè)備語音流應(yīng)用。
本文從支持語音流服務(wù)所需的擴展服務(wù)集開始介紹BlueVoice應(yīng)用,然后在實際硬件設(shè)備上評估BlueVoice的性能。在所選的硬件平臺上,BlueVoice應(yīng)用完全支持語音流服務(wù),同時避免能源浪費。
I. 前言
經(jīng)歷過去幾十年的快速增長,互聯(lián)網(wǎng)幾乎滲透到人類社會日常生活的方方面面。未來互聯(lián)網(wǎng)將擴展到萬物互聯(lián),數(shù)十億甚至數(shù)百億個有唯一身份的“物品”通過無線通信與人類和周圍環(huán)境交互,執(zhí)行高級任務(wù)。在這一構(gòu)想中,“物品”可能是傳感器、致動器、家電、玩具,總之,可以是任何能夠被識別的虛擬或?qū)嶓w物品,這種互聯(lián)網(wǎng)演進構(gòu)想被稱為物聯(lián)網(wǎng)(IoT)。
物聯(lián)網(wǎng)概念是通過標準協(xié)議解決方案(即互聯(lián)網(wǎng)協(xié)議)和無線通信接口,把所有產(chǎn)品設(shè)備連接在一起,組成一個全球網(wǎng)絡(luò)。實現(xiàn)萬物互聯(lián),雖然可以使用現(xiàn)有的大量的射頻通信技術(shù),但是當物聯(lián)網(wǎng)產(chǎn)品是部署在現(xiàn)場的自主型電池供電裝置時,低功耗無線通信技術(shù)才會是最適合的通信解決方案。在這個方面,低能耗藍牙 (Bluetooth LE) [1]技術(shù)被視為最有效的物聯(lián)網(wǎng)通信解決方案,同時正在融入互聯(lián)網(wǎng)世界[2]。
在今天的物聯(lián)網(wǎng)應(yīng)用中,低能耗藍牙解決方案主要用于生命參數(shù)監(jiān)視用途。除傳統(tǒng)的監(jiān)視服務(wù)外,近幾年業(yè)界開始探索基于其它技術(shù)的先進應(yīng)用。例如,參考文獻[3]提出并分析了基于IEEE802.15.4的網(wǎng)絡(luò)[4]語音通信。在這個方面,通過低能耗藍牙傳輸多媒體數(shù)據(jù)還是處于起步階段,缺少可用的解決方案主要是因為最初設(shè)想時未考慮到這些應(yīng)用(例如,最初主要考慮的是醫(yī)療、健身等應(yīng)用)。本文以在低能耗藍牙設(shè)備上支持語音流服務(wù)的BlueVoice應(yīng)用為例,探討如何解決這些技術(shù)限制問題。我們先了解一下低能耗藍牙技術(shù),然后詳細介紹支持該新應(yīng)用概念所需的擴展服務(wù)集,再介紹應(yīng)用設(shè)計,最后在STM32 Nucleo L476板上測試實際性能。
本文的有要內(nèi)容安排如下:第二章介紹低能耗藍牙工作原理,先描述整個工作棧;然后介紹配置文件(Profiles)概念。第三章介紹應(yīng)用方案設(shè)計,描述其低能耗藍牙配置文件,然后介紹其設(shè)計原則、設(shè)計實現(xiàn)及實際性能。第四章是結(jié)論。
M. Gentili and R. Sannino are with AST Audio/Sensors Platforms R&D and Audio SW Ecosystem, STMicroelectronics, Agrate Brianza, Italy (e-mail: [maurizio.gentilijroberto.sannino]@st.com)。
M. Petracca is with Scuola Superiore Sant’Anna di Pisa and National Inter-University Consortium for Telecommunications, Pisa, Italy (e-mail:matteo.petracca@sssup.it) 。
II. 低能耗藍牙技術(shù)概述
BLE低能耗藍牙規(guī)范于2010年寫入藍牙4.0核心規(guī)范,盡管與基本藍牙相似,但是低能耗藍牙規(guī)范主要是為超低功耗應(yīng)用設(shè)計開發(fā)。通過低能耗藍牙技術(shù)連接電池供電設(shè)備的潛在應(yīng)用非常少,醫(yī)療、健身和智慧家居是其中僅有的幾例。
圖1. 低能耗藍牙協(xié)議棧
如圖1所示,低能耗藍牙協(xié)議??傮w結(jié)構(gòu)主要由兩個部分組成:控制器和主機。應(yīng)用軟件使用協(xié)議棧主機層的協(xié)議提供的服務(wù)。主機層分為五層:邏輯鏈路控制和適配協(xié)議(L2CAP)、屬性協(xié)議(ATT)、通用屬性配置文件(GATT)、安全管理協(xié)議(SM)、通用訪問配置文件(GAP)??刂破鞑糠种挥袃蓪樱何锢韺樱≒HY)和鏈路層(LL)。如圖1所示,主機-控制器(HCI)接口是控制器與主機的通信通道。
物理層負責比特調(diào)制,通過無線通道收發(fā)數(shù)據(jù)。最高數(shù)據(jù)速率是1 Mb/s,典型通信距離是幾十米。
鏈路層規(guī)定兩個設(shè)備之間雙向通信的功能。低能耗藍牙節(jié)點有兩個角色:主設(shè)備和從設(shè)備。通常是主設(shè)備(例如,筆記本電腦、智能手機)搜索從設(shè)備(例如,體感設(shè)備);必要時,從設(shè)備向主設(shè)備發(fā)送數(shù)據(jù)。從設(shè)備通常處于睡眠狀態(tài),并在固定間隔內(nèi)喚醒,以便被主設(shè)備搜到。
在鏈路層之上,邏輯鏈路控制和適配協(xié)議(L2CAP)有兩個主要功能。該協(xié)議的主要作用是提供多路傳輸功能,按照標準低能耗藍牙分組數(shù)據(jù)格式,封裝轉(zhuǎn)換頂層多協(xié)議數(shù)據(jù)。安全管理協(xié)議(SM)和通用訪問配置文件(GAP)分別提供數(shù)據(jù)安全和服務(wù)管理功能。詳細的說,安全管理協(xié)議定義密鑰的生成方式,以及如何在兩個設(shè)備(主從設(shè)備)之間交換密鑰,建立安全加密通信通道,而通用訪問配置文件則規(guī)定兩個設(shè)備如何在底層交互操作
屬性協(xié)議(ATT)和通用屬性配置文件是開發(fā)新應(yīng)用時需要重點考慮的兩個協(xié)議組件。屬性協(xié)議是一個無狀態(tài)的客戶機/服務(wù)器協(xié)議:不考慮設(shè)備的底層角色是主設(shè)備還是從設(shè)備,每個設(shè)備都可以設(shè)為服務(wù)器、客戶機或是客戶機兼服務(wù)器??蛻魴C請求服務(wù)器數(shù)據(jù)發(fā)送數(shù)據(jù),服務(wù)器向客戶機發(fā)送數(shù)據(jù),數(shù)據(jù)以屬性的形式保存在服務(wù)器內(nèi),每個屬性都含有GATT管理的數(shù)據(jù),而且該數(shù)據(jù)被分配一個通用唯一標識符(UUID)。通過一個L2CAP專用通道,屬性協(xié)議在服務(wù)器屬性與客戶機之間建立一條通信通道。通用屬性配置文件(GATT)在屬性協(xié)議層添加一個數(shù)據(jù)抽象模型,負責搜索屬性協(xié)議保存的數(shù)據(jù),在兩個設(shè)備之間交換特征。每個低能耗藍牙設(shè)備都有一套可能屬性(存儲服務(wù))和特征(與存儲服務(wù)相關(guān)的屬性)。如果在低能耗藍牙棧上建立一個新應(yīng)用,則必須定義屬性和特征。某一特定應(yīng)用的特征、屬性和底層規(guī)范合稱配置文件,標準配置文件可保證不同品牌的產(chǎn)品能夠互聯(lián)互通。
評論