0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

低功耗蓝牙无线传感器

西西 作者:厂商供稿 2018-04-02 11:39 次阅读

作者:Mahesh Balan, Cypress

如今,科技发展迅猛,各种设备让世界变得更加智能。新技术的不断出现,不仅改进了现有技术,还创造了新的细分市场。蓝牙技术的进步使得智能蓝牙(低功耗蓝牙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等)也可以进入各自的低功率模式并在需要时唤醒。因此,开发人员能够根据整个系统的实际需要,对功率进行非常细致的控制。有关详细的低功率代码片段,请参见低功耗蓝牙应用的低功率设计与电池寿命估算。

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传输。

BLE 信标

蓝牙信标的广播信号可以被附近的智能设备捕捉。对于此类应用,只需要将BLE组件配置为广播器的GAP,这样系统就可以发送广播信息。信标的功耗应该较低,也可以得益于集成的处理器/BLE设计。太阳能低功耗蓝牙信标和无线传感器节点可显示正在使用的BLE信标。

BLE在消费类、工业和嵌入式应用等许多市场中的发展势头良好。该项技术成功的一个关键因素是它能够在低功耗的情况下运行。BLE技术使开发人员能够设计出由电池供电、使用寿命更长,对用户更加友好的应用。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 传感器
    +关注

    关注

    2548

    文章

    50642

    浏览量

    751740
  • 低功耗蓝牙
    +关注

    关注

    1

    文章

    224

    浏览量

    21217
收藏 人收藏

    评论

    相关推荐

    解读低功耗蓝牙(BLE)无线传感器网络应用技术

    本文将重点介绍如何在数据变化不频繁的传感器应用中,有效地利用BLE维持低功耗无线运行。
    的头像 发表于 02-10 03:01 1.1w次阅读
    解读<b class='flag-5'>低功耗</b><b class='flag-5'>蓝牙</b>(BLE)<b class='flag-5'>无线</b><b class='flag-5'>传感器</b>网络应用技术

    网络闸道和外围传感器利用Nordic低功耗蓝牙无线技术提供互连的智慧家庭生态系统

    网络闸道和外围传感器利用Nordic低功耗蓝牙无线技术提供互连的智慧家庭生态系统 深圳市弘毅云佳科技有限公司的∑CASA家庭自动化系统采
    发表于 06-13 19:00

    低功耗蓝牙无线传感器应用

    )的定义,BLE是一种低功率、短距离、低数据速率的无线通信协议。BLE的分层协议栈能以低功耗高效传输少量数据,使其成为电池供电应用的首选无线协议,如需要定期提取和处理数据的低功耗
    发表于 11-12 10:45

    低功耗蓝牙的应用领域

    的芯片小型化封装,然后可通过智能手机与现有内置低功耗蓝牙手机的无缝连接。可用于健康/健身传感器和监控设备、健康体重秤, 血糖计, 血压计, 脉搏血氧仪, 心率带, 活动传感器等。Bea
    发表于 03-18 02:25

    低功耗蓝牙无线传感器

    和处理数据的低功耗传感器网络接口等。本文将重点介绍如何在数据变化不频繁的传感器应用中,有效地利用BLE维持低功耗无线运行。目前,全球正进入一
    发表于 07-18 06:49

    低功耗传感器节点-NLM300无线无源传感模块原理及资料

    低功耗,可长时间独立工作。这个模块的传感器接口比较全,可以连接振弦、差阻、模拟量(电流、电压和脉冲)和其它数字接口传感器。下面是技术手册里标注的功耗性能。
    发表于 10-31 21:47

    低功耗蓝牙无线传感器解析

    ,BLE是一种低功率、短距离、低数据速率的无线通信协议。BLE的分层协议栈能以低功耗高效传输少量数据,使其成为电池供电应用的首选无线协议,如需要定期提取和处理数据的低功耗
    发表于 07-30 06:58

    基于低功耗蓝牙技术的温湿度传感器节点该怎样去设计?

    为什么要设计一种温湿度传感器节点?基于低功耗蓝牙技术的温湿度传感器节点该怎样去设计?如何对温湿度传感器节点进行测试?
    发表于 05-24 06:32

    无线传感器和执行蓝牙低功耗

    对于低功耗无线传感器网络,有许多无线协议选项,但没有一项比蓝牙低能量更适合这项任务。
    发表于 08-08 14:29 15次下载
    <b class='flag-5'>无线</b><b class='flag-5'>传感器</b>和执行<b class='flag-5'>器</b>的<b class='flag-5'>蓝牙</b><b class='flag-5'>低功耗</b>

    低功耗无线传感器网络

    无线传感器网络一旦沦为几个小众市场,就能够带来广泛的新应用。如果您遵循本文中详细介绍的建议,设计一个基本的低功耗无线传感器网络是很简单的。
    发表于 08-10 14:12 6次下载
    <b class='flag-5'>低功耗</b><b class='flag-5'>无线</b><b class='flag-5'>传感器</b>网络

    基于低功耗无线传感器网络设计

    无线传感器网络,一旦沦为少数利基市场,使各种新应用程序。如果你遵循本文中详细的建议,设计一个基本的低功耗无线传感器网络是很简单的。
    发表于 09-14 17:25 2次下载
    基于<b class='flag-5'>低功耗</b>的<b class='flag-5'>无线</b><b class='flag-5'>传感器</b>网络设计

    低功耗蓝牙模块是如何作用于传感器的?

    、计算机等)检测到相关的通信模式与之通信;在实际应用中,传感器一般体积偏小,而为了提高待机时长,相比其他的无线传输方式,工程师一般会优选低功耗、小尺寸的BLE蓝牙模块;其次,
    的头像 发表于 06-22 10:36 5155次阅读

    低功耗蓝牙模块是如何作用于传感器的?

    应用中,传感器一般体积偏小,而为了提高待机时长,相比其他的无线传输方式,工程师一般会优选低功耗、小尺寸的BLE蓝牙模块;其次,低功耗
    的头像 发表于 10-09 17:34 8562次阅读

    应用于无线传感器网络的蓝牙低功耗技术介绍

    自动化中的传感器和致动无线连接提供最佳解决方案。在这些类型的应用中,现有技术太昂贵,太慢或消耗太多能量。该解决方案缺乏用于无线传感器和执
    的头像 发表于 02-28 09:12 3813次阅读
    应用于<b class='flag-5'>无线</b><b class='flag-5'>传感器</b>网络的<b class='flag-5'>蓝牙</b><b class='flag-5'>低功耗</b>技术介绍

    低功耗无线传感器网络节点设计与实现

    低功耗无线传感器网络节点设计与实现
    发表于 06-23 11:26 17次下载