【導讀】如今,科技發(fā)展迅猛,各種設備讓世界變得更加智能。新技術的不斷出現(xiàn),不僅改進了現(xiàn)有技術,還創(chuàng)造了新的細分市場。藍牙技術的進步使得智能藍牙(低功耗藍牙BLE)應運而生。按照藍牙技術聯(lián)盟(SIG)的定義,BLE是一種低功率、短距離、低數(shù)據(jù)速率的無線通信協(xié)議。
BLE的分層協(xié)議棧能以低功耗高效傳輸少量數(shù)據(jù),使其成為電池供電應用的首選無線協(xié)議,如需要定期提取和處理數(shù)據(jù)的低功耗傳感器網(wǎng)絡接口等。本文將重點介紹如何在數(shù)據(jù)變化不頻繁的傳感器應用中,有效地利用BLE維持低功耗無線運行。
目前,全球正進入一個各種系統(tǒng)都需要采集和交換數(shù)據(jù)的物聯(lián)網(wǎng)(IoT)時代。在傳感器以無線方式連接,形成網(wǎng)絡并實現(xiàn)設備間數(shù)據(jù)交換的物聯(lián)網(wǎng)中,BLE發(fā)揮著至關重要的角色。主機設備可以是能夠監(jiān)測和控制所有網(wǎng)絡節(jié)點的智能手機。此類物聯(lián)網(wǎng)(IoT)應用包括日?;顒幼粉櫼约凹彝プ詣踊δ埽绺咝ё≌彰?、溫度和濕度監(jiān)測與控制、遠程控制消費類電子設備等。
低功耗藍牙的功率模式
如果傳感器采用電池供電,功耗受限且必須持續(xù)很長時間的話,BLE將成為最佳連接選擇。比如,一個測量溫度及濕度的低功耗傳感器,其參數(shù)是緩慢變化的,此類傳感器可以與能夠處理并將數(shù)據(jù)傳輸?shù)街鳈C設備的BLE集成型處理器連接。BLE子系統(tǒng)的操作頻率不高,例如每百毫秒一次,而且在其他時間處于低功耗模式。賽普拉斯PSoC 4 BLE等BLE型器件可提供多用戶可配置的功耗模式,從而優(yōu)化獨立于處理器工作模式的BLE子系統(tǒng)(BLESS)的運行。使開發(fā)人員能夠降低功耗,并使單塊電池的使用壽命達到數(shù)年之久。
這五種系統(tǒng)功率模式分別為:主動、睡眠、深度睡眠、休眠和停止模式。三種BLESS功耗模式分別為主動、睡眠和深度睡眠模式。BLESS模式在系統(tǒng)功率為1.3微安的深度睡眠模式下始終啟用。BLE子系統(tǒng)可以在BLESS Active模式下發(fā)送和接收數(shù)據(jù)。它能保持空閑狀態(tài),并在BLESS睡眠模式和深度睡眠模式下維持連接。這些功耗模式獨立于系統(tǒng)的功耗模式,因此開發(fā)人員能夠靈活地為系統(tǒng)和BLESS分別選擇最高效的配置。在此基礎上,我們可以建立一個電流需求極低、通常由紐扣電池供電的完整系統(tǒng)。
例如,1秒廣播間隔的平均耗電量只有26微安。而1秒連接間隔的平均耗電量更低,只有17微安。更多有關功耗數(shù)值的詳細信息以及如何配置和降低功耗,點擊文末閱讀原文查看低功耗藍牙應用的低功率設計與電池壽命估算。
傳感器和低功耗藍牙
傳感器可以大致分為模擬和數(shù)字兩種。典型的模擬傳感器包括用于監(jiān)測煙霧、氣體、環(huán)境光線、人員感應等的傳感器。數(shù)字傳感器包括監(jiān)測溫度、濕度、壓力、加速度等的傳感器。當BLE子系統(tǒng)與應用處理器集成時,傳感器可以采用多種不同的方式進行連接。例如,可以將模擬傳感器饋送到前端具有電壓輸出器的SAR ADC。數(shù)字傳感器無需進行模擬轉換,因此可以通過任何通信接口(如I2C、SPI或單線接口)采集數(shù)據(jù)。
集成的定時器、計數(shù)器、脈寬調(diào)制器和通用數(shù)字模塊(UDB)均可用于實現(xiàn)自定義邏輯以進一步處理傳感器數(shù)據(jù)。最終,經(jīng)處理或所接收的數(shù)字數(shù)據(jù)可以通過BLE接口發(fā)送,并由內(nèi)置BLE功能的手機或任何其他客戶端設備進行監(jiān)測。隨著資源可用性和成本的不斷變化,可選擇不同系列的BLE集成處理器(如PSoC 4 BLE)以適應各種應用。
無線傳感器網(wǎng)絡
無線傳感器網(wǎng)絡通常作為網(wǎng)狀網(wǎng)絡和樞紐網(wǎng)絡(見圖1)。樞紐網(wǎng)絡包括可以放置在相同位置的所有傳感器。每個傳感器需要連接到單個BLE外圍設備(服務器)來處理數(shù)據(jù)并將其發(fā)送到BLE中央設備(客戶端)。網(wǎng)狀網(wǎng)絡采用可以遠程定位傳感器的拓撲結構。網(wǎng)格中的每個節(jié)點都需要連接到BLE外圍設備(服務器),所有這些外圍設備都可以連接到BLE中央設備(客戶端)。
圖1:傳感器網(wǎng)絡拓撲結構
內(nèi)置BLE功能的處理器的靈活性和豐富資源,使傳感器能夠與單一BLE設備連接。圖2是使用PSoC Creator的典型配置。PSoC Creator是一個用于圍繞PSoC架構開發(fā)應用程序的IDE。圖中顯示的是模擬和數(shù)字傳感器接口以及BLE子系統(tǒng)。該配置展示的是用于感測煙霧、光照強度、溫度、濕度和壓力的典型工業(yè)數(shù)據(jù)監(jiān)測系統(tǒng)。配置中的每個組件都有一個關聯(lián)的應用程序編程接口(API),開發(fā)人員可根據(jù)需要訪問這些組件。每個組件還有一個與其相關的數(shù)據(jù)表對組件的可用配置進行說明。
圖2:PSoC Creator項目 –
包含所有必要組件的頂級設計
BLE組件在其GAP層中被配置為從設備。這使任何BLE設備(如BLE手機)都可以掃描此設備,在BLE從設備包含其名稱廣播時被BLE手機連接。此外,在其GATT層中,BLE設備被配置為具有自定義配置文件的GATT服務器。下面將討論BLE低功耗特性在該組件內(nèi)啟用。名為“Sensor Service”的單一服務具有5種不同的特性,用于采集每個傳感器的數(shù)據(jù)。每個特性都具有通知功能,可以將傳感器數(shù)據(jù)作為通知發(fā)送。
BLE中的一切都作為“活動”處理。BLE堆棧提供處理這些事件的“定義”。以下代碼片段展示了其中一部分活動的運行。
圖3:BLE組件配置
一旦兩個設備實現(xiàn)連接,就能使用連接間隔不同的通知發(fā)送數(shù)據(jù)。應用程序接口“CyBle_ProcessEvents()”應置于while(1)循環(huán)中,且必須在每個連接間隔中至少調(diào)用一次。我們也可以調(diào)用在同一while循環(huán)中將數(shù)據(jù)作為通知發(fā)送的函數(shù)。以下函數(shù)可用于將溫度數(shù)據(jù)的一個字節(jié)作為通知發(fā)送。這也適用于其他傳感器特性。
如上文所述,處理器和BLE子系統(tǒng)(BLESS)具有獨立的低功率模式。舉個例子,如果設備斷開連接,我們可以將處理器設置為休眠或停止模式以降低功耗。在廣播和連接間隔之間,我們可以利用BLESS深度睡眠模式,甚至連所使用的各個組件(如ADC、I2C等)也可以進入各自的低功率模式并在需要時喚醒。因此,開發(fā)人員能夠根據(jù)整個系統(tǒng)的實際需要,對功率進行非常細致的控制。有關詳細的低功率代碼片段,請點擊文末閱讀原文觀看低功耗藍牙應用的低功率設計與電池壽命估算。
while(1) 循環(huán)如下:
目前具有BLE功能的手機可以掃描這一傳感器網(wǎng)絡設備,并使用各種特性來監(jiān)視每個傳感器的數(shù)據(jù)。一些處理器制造商還提供手機端的BLE連接軟件。例如,賽普拉斯提供了一個名為CySmart的應用程序,該應用程序可以安裝在您的安卓或Apple設備上,并協(xié)助您監(jiān)控BLE傳輸。
BLE 信標
藍牙信標的廣播信號可以被附近的智能設備捕捉。對于此類應用,只需要將BLE組件配置為廣播器的GAP,這樣系統(tǒng)就可以發(fā)送廣播信息。信標的功耗應該較低,也可以得益于集成的處理器/BLE設計。太陽能低功耗藍牙信標和無線傳感器節(jié)點可顯示正在使用的BLE信標。
BLE在消費類、工業(yè)和嵌入式應用等許多市場中的發(fā)展勢頭良好。該項技術成功的一個關鍵因素是它能夠在低功耗的情況下運行。BLE技術使開發(fā)人員能夠設計出由電池供電、使用壽命更長,對用戶更加友好的應用。
推薦閱讀:
設計和制作用于功率測量的示波器探頭