低功耗藍牙無線傳感器
發布時間:2018-04-02 責任編輯:lina
【導讀】如(ru)今(jin),科(ke)技(ji)發(fa)展(zhan)迅(xun)猛(meng),各(ge)種(zhong)設(she)備(bei)讓(rang)世(shi)界(jie)變(bian)得(de)更(geng)加(jia)智(zhi)能(neng)。新(xin)技(ji)術(shu)的(de)不(bu)斷(duan)出(chu)現(xian),不(bu)僅(jin)改(gai)進(jin)了(le)現(xian)有(you)技(ji)術(shu),還(hai)創(chuang)造(zao)了(le)新(xin)的(de)細(xi)分(fen)市(shi)場(chang)。藍(lan)牙(ya)技(ji)術(shu)的(de)進(jin)步(bu)使(shi)得(de)智(zhi)能(neng)藍(lan)牙(ya)(低功耗藍牙BLE)應運而生。按照藍牙技術聯盟(SIG)的定義,BLE是一種低功率、短距離、低數據速率的無線通信協議。
BLE的分層協議棧能以低功耗高效傳輸少量數據,使其成為電池供電應用的首選無線協議,如需要定期提取和處理數據的低功耗傳感器網絡接口等。本文將重點介紹如何在數據變化不頻繁的傳感器應用中,有效地利用BLE維持低功耗無線運行。
目前,全球正進入一個各種係統都需要采集和交換數據的物聯網(IoT)時代。在傳感器以無線方式連接,形成網絡並實現設備間數據交換的物聯網中,BLE發揮著至關重要的角色。主機設備可以是能夠監測和控製所有網絡節點的智能手機。此類物聯網(IoT)應用包括日常活動追蹤以及家庭自動化功能,如高效住宅照明、溫度和濕度監測與控製、遠程控製消費類電子設備等。
低功耗藍牙的功率模式
如果傳感器采用電池供電,功耗受限且必須持續很長時間的話, BLE將成為最佳連接選擇。比如,一個測量溫度及濕度的低功耗傳感器, 其參數是緩慢變化的,此類傳感器可以與能夠處理並將數據傳輸到主機設備的BLE集成型處理器連接。BLE子係統的操作頻率不高,例如每百毫秒一次,而且在其他時間處於低功耗模式。賽普拉斯PSoC 4 BLE等BLE型器件可提供多用戶可配置的功耗模式,從而優化獨立於處理器工作模式的BLE子係統(BLESS)的運行。使開發人員能夠降低功耗,並使單塊電池的使用壽命達到數年之久。
這五種係統功率模式分別為:主動、睡眠、深度睡眠、休眠和停止模式。三種BLESS功耗模式分別為主動、睡眠和深度睡眠模式。BLESS模式在係統功率為1.3微安的深度睡眠模式下始終啟用。BLE子係統可以在BLESS Active模式下發送和接收數據。它能保持空閑狀態,並在BLESS睡眠模式和深度睡眠模式下維持連接。這些功耗模式獨立於係統的功耗模式,因此開發人員能夠靈活地為係統和BLESS分別選擇最高效的配置。在此基礎上,我們可以建立一個電流需求極低、通常由紐扣電池供電的完整係統。
例如,1秒廣播間隔的平均耗電量隻有26微安。而1秒連接間隔的平均耗電量更低,隻有17微安。
傳感器和低功耗藍牙
傳感器可以大致分為模擬和數字兩種。典型的模擬傳感器包括用於監測煙霧、氣體、環境光線、人員感應等的傳感器。數字傳感器包括監測溫度、濕度、壓力、加速度等的傳感器。當BLE子係統與應用處理器集成時,傳感器可以采用多種不同的方式進行連接。例如,可以將模擬傳感器饋送到前端具有電壓輸出器的SAR ADC。數字傳感器無需進行模擬轉換,因此可以通過任何通信接口(如I2C、SPI或單線接口)采集數據。集成的定時器、計數器、脈寬調製器和通用數字模塊(UDB)均可用於實現自定義邏輯以進一步處理傳感器數據。最終,經處理或所接收的數字數據可以通過BLE接口發送,並由內置BLE功能的手機或任何其他客戶端設備進行監測。隨著資源可用性和成本的不斷變化,可選擇不同係列的BLE集成處理器(如PSoC 4 BLE)以適應各種應用。
無線傳感器網絡
無線傳感器網絡通常作為網狀網絡和樞紐網絡(見圖1)。樞紐網絡包括可以放置在相同位置的所有傳感器。每個傳感器需要連接到單個BLE外圍設備(服務器)來處理數據並將其發送到BLE中央設備(客戶端)。網狀網絡采用可以遠程定位傳感器的拓撲結構。網格中的每個節點都需要連接到BLE外圍設備(服務器),所有這些外圍設備都可以連接到BLE中央設備(客戶端)。
圖1:傳感器網絡拓撲結構

網狀網絡中樞網絡 樞紐網絡
內置BLE功能的處理器的靈活性和豐富資源,使傳感器能夠與單一BLE設備連接。圖2是使用PSoC Creator的典型配置。PSoC Creator是一個用於圍繞PSoC架構開發應用程序的IDE。圖中顯示的是模擬和數字傳感器接口以及BLE子係統。該配置展示的是用於感測煙霧、光照強度、溫度、濕度和壓力的典型工業數據監測係統。配置中的每個組件都有一個關聯的應用程序編程接口(API),開發人員可根據需要訪問這些組件。每個組件還有一個與其相關的數據表對組件的可用配置進行說明。
圖2:PSoC Creator項目 – 包含所有必要組件的頂級設計

BLE組件在其GAP層中被配置為從設備。這使任何BLE設備(如BLE手機)都可以掃描此設備,在BLE從設備包含其名稱廣播時被BLE手機連接。此外,在其GATT層中,BLE設備被配置為具有自定義配置文件的GATT服務器。下麵將討論BLE低功耗特性在該組件內啟用。名為“Sensor Service”的單一服務具有5種不同的特性,用於采集每個傳感器的數據。每個特性都具有通知功能,可以將傳感器數據作為通知發送。
BLE中的一切都作為“-活動”處理。BLE堆棧提供處理這些事件的“定義”。以下代碼片段展示了其中一部分活動的運行。
CyBle_Start(AppCallBack);
void AppCallBack(uint32 event, void* eventParam)
{
CYBLE_API_RESULT_T apiResult;
switch (event)
{
case CYBLE_EVT_STACK_ON: /* This event is received when the component is Started */
/* Enter into discoverable mode so that remote device can search it. */
apiResult = CyBle_GappStartAdvertisement(CYBLE_ADVERTISING_FAST);
if(apiResult != CYBLE_ERROR_OK)
{
/* Error */
}
break;
case CYBLE_EVT_GAPP_ADVERTISEMENT_START_STOP:
if(CYBLE_STATE_DISCONNECTED == CyBle_GetState())
{
CySysPmHibernate(); /* Enter Hibernate Mode for Low Current */
}
break;
case CYBLE_EVT_GAP_DEVICE_CONNECTED:
break;
case CYBLE_EVT_GAP_DEVICE_DISCONNECTED:
/* Put the device into discoverable mode so that a remote can search it. */
apiResult = CyBle_GappStartAdvertisement(CYBLE_ADVERTISING_FAST);
if(apiResult != CYBLE_ERROR_OK)
{
/* Error */
}
break;
/* GATT Events */
case CYBLE_EVT_GATT_CONNECT_IND:
break;
case CYBLE_EVT_GATT_DISCONNECT_IND:
break;
}
}
圖3:BLE組件配置

一旦兩個設備實現連接,就能使用連接間隔不同的通知發送數據。應用程序接口“CyBle_ProcessEvents()”應置於while(1)循環中,且必須在每個連接間隔中至少調用一次。我們也可以調用在同一while循環中將數據作為通知發送的函數。以下函數可用於將溫度數據的一個字節作為通知發送。這也適用於其他傳感器特性。
voidSendTempNotification(uint8TempData)
{
CYBLE_API_RESULT_T bleApiResult;
CYBLE_GATTS_HANDLE_VALUE_NTF_T TempHandle;
TempHandle.value.val = &TempData;
TempHandle.value.len = 1;
TempHandle.attrHandle = CYBLE_SENSORSERVICE_TEMPERATURE_CHAR_HANDLE;
do
{
bleApiResult = CyBle_GattsNotification(cyBle_connHandle, &TempHandle);
CyBle_ProcessEvents();
}while((CYBLE_ERROR_OK != bleApiResult) && (CYBLE_STATE_CONNECTED == cyBle_state));
}
如上文所述,處理器和BLE子係統(BLESS)具有獨立的低功率模式。舉個例子 ,如果設備斷開連接,我們可以將處理器設置為休眠或停止模式以降低功耗。在廣播和連接間隔之間,我們可以利用BLESS深度睡眠模式,甚至連所使用的各個組件(如ADC、I2C等)也ye可ke以yi進jin入ru各ge自zi的de低di功gong率lv模mo式shi並bing在zai需xu要yao時shi喚huan醒xing。因yin此ci,開kai發fa人ren員yuan能neng夠gou根gen據ju整zheng個ge係xi統tong的de實shi際ji需xu要yao,對dui功gong率lv進jin行xing非fei常chang細xi致zhi的de控kong製zhi。有you關guan詳xiang細xi的de低di功gong率lv代dai碼ma片pian段duan,請qing參can見jian低di功gong耗hao藍lan牙ya應ying用yong的de低di功gong率lv設she計ji與yu電dian池chi壽shou命ming估gu算suan。
while(1) 循環如下:
while(1)
{
/* Process all the generated events. */
CyBle_ProcessEvents();
/* To achieve low power in the device */
LowPowerImplementation();
/***********************************************************************
* Wait for connection established with Central device
***********************************************************************/
if(CyBle_GetState() == CYBLE_STATE_CONNECTED)
{
CyBle_ProcessEvents();
SendTempNotification(Temperature);
}
}
目前具有BLE功能的手機可以掃描這一傳感器網絡設備,並使用各種特性來監視每個傳感器的數據。一些處理器製造商還提供手機端的BLE連接軟件。例如,賽普拉斯提供了一個名為CySmart的應用程序,該應用程序可以安裝在您的安卓或Apple設備上,並協助您監控BLE傳輸。
一文看懂電流變送器作用和原理及電路圖
一文了解NFC電路中電感器的必要特性及產品
BLE 信標
藍牙信標的廣播信號可以被附近的智能設備捕捉。對於此類應用,隻需要將BLE組件配置為廣播器的GAP,這樣係統就可以發送廣播信息。信標的功耗應該較低,也可以得益於集成的處理器/BLE設計。太陽能低功耗藍牙信標和無線傳感器節點可顯示正在使用的BLE信標。
BLE在消費類、工業和嵌入式應用等許多市場中的發展勢頭良好。該項技術成功的一個關鍵因素是它能夠在低功耗的情況下運行。BLE技術使開發人員能夠設計出由電池供電、使用壽命更長,對用戶更加友好的應用。
推薦閱讀:
分享電源設計經驗之MOS管驅動電路
智慧城市建設信息安全保障的完整閉環
采用去耦和不采用去耦緩衝電路差異推薦閱讀:
分享電源設計經驗之MOS管驅動電路
智慧城市建設信息安全保障的完整閉環
一文看懂電流變送器作用和原理及電路圖
一文了解NFC電路中電感器的必要特性及產品
特別推薦
- 噪聲中提取真值!瑞盟科技推出MSA2240電流檢測芯片賦能多元高端測量場景
- 10MHz高頻運行!氮矽科技發布集成驅動GaN芯片,助力電源能效再攀新高
- 失真度僅0.002%!力芯微推出超低內阻、超低失真4PST模擬開關
- 一“芯”雙電!聖邦微電子發布雙輸出電源芯片,簡化AFE與音頻設計
- 一機適配萬端:金升陽推出1200W可編程電源,賦能高端裝備製造
技術文章更多>>
- 突破工藝邊界,奎芯科技LPDDR5X IP矽驗證通過,速率達9600Mbps
- 通過直接、準確、自動測量超低範圍的氯殘留來推動反滲透膜保護
- 從技術研發到規模量產:恩智浦第三代成像雷達平台,賦能下一代自動駕駛!
- 從機械執行到智能互動:移遠Q-Robotbox助力具身智能加速落地
- 品英Pickering將亮相2026航空電子國際論壇,展示航電與電池測試前沿方案
技術白皮書下載更多>>
- 車規與基於V2X的車輛協同主動避撞技術展望
- 數字隔離助力新能源汽車安全隔離的新挑戰
- 汽車模塊拋負載的解決方案
- 車用連接器的安全創新應用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索




