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

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

3天内不再提示

使用低功耗蓝牙技术将可穿戴无线传感器连接到物联网

电子设计 来源:互联网 作者:佚名 2017-11-06 15:37 次阅读

工业物联网 (IIoT) 在很大程度上要依赖传感器从便携式可穿戴系统收集数据,以便监控运动、压力、湿度和其他众多特征,然后将这些数据馈送至云进行处理。

通过模块方式,我们可以快速轻松地将传感器添加到设计中,但在将这些模块连接到网络的其余部分时,我们通常会面临一些挑战。有很多不同方法可以进行这种连接,但其中一种最简单的方法是采用最新的低功耗蓝牙 (BLE) 技术。BLE 收发器采用了芯片级封装,尺寸有所缩减,因而足够小巧,能够轻松与工业物联网设计中的各种传感器配合使用。

图 1:Dialog 物联网传感器加密狗。

无线收发器设计公司 Dialog Semiconductor 实现了这个目标,他们的 SmartBond 物联网传感器开发套件让运动和环境检测应用的开发工作变得更轻松。

Dialog 将无线收发器和传感器组合在专用模块中,进而获得世界上功耗最低的 12 自由度 (DOF) 无线传感器模块。该模块在缩减系统尺寸和成本的同时,还包含了用于加快物联网系统开发的所有必要硬件和软件。通过组合所有这些元件,Dialog 能够利用代码来融合来自各个传感器的数据,提供更有意义的输出,而不只是提供数据流。这就有助于降低收发器的负载,减少存储器需求和电流消耗,从而延长电池寿命并缩短开发时间。

这种系统优化只有通过开发完整的模块才能实现,而这种模块要将 BLE 收发器和 ARM® Cortex®-M0 处理器Bosch Sensortec 的加速计陀螺仪、磁力仪、环境传感器组合在一块尺寸仅为 16 x 15 mm 的电路板上。

图 2:该物联网模块组合了三种传感器和一个蓝牙收发器,实现 12 自由度测量。

它还包括 SmartFusion,也就是 Dialog 独有的智能传感器融合软件库,可进行数据采集、传感器校准和融合。这样一来,该模块只需使用 4.5 KB 的 ROM 和 500 字节的 RAM,并且能决定传感器的数据速率。

该模块采用 DA14583 低功耗蓝牙 SoC,配备工作频率为 12.5 Hz 的 BMI160 6 轴惯性测量装置、工作频率为 10 Hz 的 BMM150 3 轴地磁传感器,以及以 0.5 Hz 测量压力、温度和湿度的 BME280 集成环境传感器装置。

所有这些都只需要 Cortex-M0 处理器提供相对较低的 0.5 MIPS 处理资源,以支持磁力仪自动校准和 9 自由度的传感器融合。其中惯性测量装置中的陀螺仪和加速计的工作频率分别为 100 Hz 和 10 Hz。

融合的方向数据通过 BLE 接口传输到在 AndroidiOS 上运行的一个物联网传感器应用,从而实现了传感器、方向数据和配置的可视化。

DA14583 搭载完全集成的无线收发器和基带处理器,在该模块中可用作独立控制器。它拥有 1 Mb 闪存来存储蓝牙规范和自定义应用代码,所有这些均能够以无线方式 (OTA) 更新。合格的 BLE 协议栈保存在专门的 ROM 中,而所有软件则通过一个简单的计划程序在 ARM Cortex-M0 处理器上运行。

BLE 固件包括 L2CAP 服务层协议、安全管理器 (SM)、属性协议 (ATT)、通用属性规范 (GATT) 和通用访问规范 (GAP)。

收发器提供 93 dB 的射频链路预算,带有一个单端 50 W 匹配式 RFIO 接口,用于连接陶瓷芯片天线。所有射频模块均由片载低压差稳压器 (LDO) 供电,而且所有的射频模块都有自己的偏置控制。

Bosch Sensortec BMM150 是一款独立的地磁传感器,可在三个垂直轴上测量磁场,适用于手机、手持设备、计算机外设、人机接口、虚拟现实功能和游戏控制器。它有自己的处理器,可将地磁传感器的输出转换为数字结果,而这些结果可通过行业标准数字接口(SPI 和 I2C)读取。

图 3:Bosch Sensortec 的 BMM150 地磁传感器可提供罗盘和位置数据。

晶圆级芯片尺寸封装 (WLCSP) 的尺寸仅为 1.56 x 1.56 x 0.6 mm,可在 1.62 至 3.6 V 的电压下工作,VDDIO 电压范围为 1.2 至 3.6 V。

BME280 是集湿度、压力和温度传感器于一体的数字传感器,采用金属盖 LGA 封装,尺寸为 2.5 × 2.5 mm,高度为 0.93 mm。湿度传感器可在宽温度范围内提供快速响应和总体精度,而压力传感器则为绝对气压传感器,具有极高的精度和分辨率,而且噪声远低于以前的版本。集成的温度传感器经过优化,可提供最低的噪声和最高的分辨率。另外,输出可用于压力和湿度传感器的温度补偿,也可用于评估环境温度。传感器提供了 SPI 和 I²C 接口,可在 1.71 至 3.6 V 的电压范围内工作,VDDIO 电压范围为 1.2 至 3.6 V。

传感器必须小心放置在模块上,以避免出现问题。磁传感器应该距离钮扣电池 3 mm 至 5 mm,距离高电流路径 10 mm,例如 DC-DC 转换器电感器附近的路径,最好距离电源轨 3 mm 至 4 mm。钮扣电池本身放置于 PCB 下方,尽可能与传感器保持最大距离,以避免可能产生的干扰。

模块在休眠模式下平均仅消耗 11 µA 的电流,而在广播模式下,在它寻找要连接的主机时,平均电流消耗将提升至 110 µA。连接后,在没有运动且所有传感器处于活动状态时,平均电流消耗为 560 µA。当模块正在移动时,测量的最高功耗为 1.35 mA(平均值)。

BMI160BME280BMM150物联网传感器(平均值)工作电流 (mA)0.950(全功能模式)0.340(85°C 下进行湿度测量) 0.714(85°C 下进行压力测量) 0.350(85°C 下进行温度测量)0.500(正常模式)休眠电流 (μA)3(挂起模式)0.33(挂起模式)11

图 4:物联网模块内部的传感器的功率数据。

Dialog 特意简化了连接方法,我们可通过 Play Store 上的 Android 应用或 App Store 上的 iOS 应用连接到模块。这些应用会自动连接到电路板,并显示来自传感器的数据。

要通过 Evothings 等开发环境对模块进行编程,可使用 Github 上的软件库。其中包括 JavaScript 库,可用于通过 Cordova 应用与模块进行通信,该应用包含了低功耗蓝牙插件,另外也可通过 Evothings Workbench 中的一个新应用进行通信。

初始化和连接

包括iotsensor.js文件

通过指定您使用的项目类型(RAW 或 SFL)创建新的 iotsensor 对象。

//Devicetypeweareconnectingto,caneitherbeRAWorSFLvartype=evothings.iotsensor.SFL;
//CreateanewIoTSensorSFLinstancevariotsensor=evothings.iotsensor.createInstance(type);

然后,将新的物联网传感器实例连接到使用 BLE 的传感器。程序库提供了选项,可使用 connectToClosestSensor(scanTime, callbackFun, disconnectFun) 函数,自动连接到最近的物联网传感器。

//Scanfor3000msiotsensor.connectToClosestSensor(3000,function(){console.log('Weareconnected!');},function(error){console.log('Disconnecterror:'+error);});

还可以手动连接到器件。

iotsensor.startScanningForDevices(function(device){console.log('Devicefound:'+device.name+'RSSI:'+device.rssi);if(iotsensor.isIoTSensor(device)){//WehaveanIoTSensor,let'sconnect!iotsensor.connectToDevice(device,function(){//Connectedanddeviceisready},function(error){console.log('Disconnecterror'+error);});}});

传感器数据

物联网传感器提供一份报告,指出哪些传感器可用以及已连接器件的固件版本。最好是使用这些选项来确定器件的功能。

console.log('IoTSensordeviceinfo:'+' Devicemodel:'+iotsensor.getDeviceModel()+' Firmware:'+iotsensor.getFirmwareString()+' Accelerometer:'+iotsensor.isAccelerometerAvailable()+' Gyroscope:'+iotsensor.isGyroscopeAvailable()+' Magnetometer:'+iotsensor.isMagnetometerAvailable()+' Barometer:'+iotsensor.isBarometerAvailable()+' Temperature:'+iotsensor.isTemperatureAvailable()+' Humidity:'+iotsensor.isHumidityAvailable()+' SensorFusion:'+iotsensor.isSflAvailable());

要从其中一个传感器接收数据,必须设置回调函数。每次当有来自传感器的可用新数据时,就会调用该函数。设置回调之后,则可启用传感器。

//Settheaccelerometercallbackandturnontheaccelerometeriotsensor.accelerometerCallback(handleReply).accelerometerOn();
functionhandleReply(data){console.log('Accelerometer:'+' x:'+data.x+' y:'+data.y+' z:'+data.z);}

设置

器件的设置可分为三个类别:基本、传感器融合和校准。

configuration.BASIC 对象是一个阵列,包含 11 个不同设置,用于控制传感器。这些对象包含了可写入器件的所有可能值。

//Changeaccelerometerrangeto16giotsensor.configuration.BASIC.ACCELEROMETER_RANGE=iotsensor.enums.ACCELEROMETER_RANGE._16g;
//Afterchangingasettings,setthebasicconfigurationindeviceiotsensor.setBasicConfiguration();
//Optional-Storebasicconfigurationinflashiotsensor.storeBasicConfigurationInFlash();
//Optional-Retrievenewsettingsfromdeviceiotsensor.readBasicConfiguration(function(data){console.log('Settings:'+data);});

传感器融合

更改传感器融合系数的方式与更改基本配置相同:

//ChangeBetaAto2000iotsensor.configuration.SFL_COEF.BETA_A=2000;
//Setbasicconfigurationindeviceiotsensor.setSflCoefficients();
//Retrievesensorfusioncoefficientsfromdeviceiotsensor.readSflCoefficients(function(data){console.log('Sflcoefficients:'+data);});

校准

使用 configuration.CAL_COEF和configuration.CAL_CONTROL对象更改校准系数和校准控制标志设置。

//SetQ_FORMATiotsensor.configuration.CAL_COEF.Q_FORMAT=12;
//Setoffsetvectoriotsensor.configuration.OFFSET_VECTOR=newInt16Array([100,100,100]);
//Setmatrixiotsensor.configuration.MATRIX=[newInt16Array([100,0,0]),newInt16Array([0,100,0]),newInt16Array([0,0,100])];
//SetCalibrationcoefficientsindeviceiotsensor.setCalibrationCoefficients();
//Retrievecalibrationcoefficientsfromdeviceiotsensor.readCalibrationCoefficients(function(data){console.log('Calibrationcoefficients:'+data);});//Setcalibrationcontrolflagbyte2(CONTROL_FLAG[0])iotsensor.configuration.CAL_CONTROL.CONTROL_FLAGS[0]=28//0011100
//Setcalibrationcontrolflagsindeviceiotsensor.setCalibrationControl();
//Retrievecalibrationcontrolflagsfromdeviceiotsensor.readCalibrationControl(function(data){console.log('Calibrationcontrol'+data);});

然后,函数 storeCalibrationAndControl() 会将传感器融合和校准的所有设置存储在蓝牙收发器的闪存中。

总结

Dialog Semiconductor 的无线模块将多个传感器组合在一起,实现了 12 自由度的测量,适合用于工业物联网和可穿戴设备设计。通过低功耗技术和最新的低功耗蓝牙技术,开发人员获得了一种简便的方式,通过 Android 和 iOS 应用轻松启动传感器模块开发。利用传感器融合软件库,可以组合原始数据,以减少模块的传输数据、功耗和存储空间,从而降低成本和复杂度。这些软件库还可在像 Evothings 这样的开发环境中使用,以针对特定应用开发更复杂的代码。

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

    关注

    2522

    文章

    47984

    浏览量

    739698
  • 工业物联网
    +关注

    关注

    25

    文章

    2285

    浏览量

    60703
收藏 人收藏

    评论

    相关推荐

    低功耗蓝牙可穿戴设备创造人机交互新体验?

    联网络以及接入智能手机或平板电脑以及计算机进行交互,就形成了以智能可穿戴设备为基础联网终端。 一般可穿戴设备与移动手机进行相互
    发表于 09-02 13:13

    用于联网无线传感器网络的低功耗长距离无线技术

    低功耗广域网 (LPWAN) 已出现很长时间,但对联网 (IoT) 低成本连接功耗和成本改进的需求正引发对 LPWAN 越来越多的关注。
    发表于 03-31 15:42

    快速开发支持蓝牙无线充电可穿戴设备

    来说,这些特性的组合推动了一系列有关功能、产品设计和性能特性的复杂要求。 在平台层面,可穿戴设备要求使用多个传感器,以便能够通过无线连接来轻松推送数据。 在产品层面,这些设备必须迎合用户的时尚需求,小巧
    发表于 04-01 11:45

    浅析蓝牙模块在车联网可穿戴设备、联网领域的应用

    技术拓展联网应用的新趋势。蓝牙模块优势应用基于蓝牙技术受众面广阔,
    发表于 07-18 17:22

    联网起到连接作用的蓝牙技术你了解多少?本文介绍BLE低功耗蓝牙的优势及典型应用

    `在智能家居中,很多设备都装载了蓝牙模块,比如智能锁、风扇、窗帘等,往大一点说这就是联网,是通过无线模块和互联网
    发表于 11-20 15:43

    蓝牙模块在车联网可穿戴设备、联网领域的应用

    技术拓展联网应用的新趋势。蓝牙模块优势应用基于蓝牙技术受众面广阔,
    发表于 12-01 17:03

    联网产业发展与低功耗蓝牙技术密不可分

    的诞生。 联网做为新兴行业,已然成为了未来经济的新引擎。近几年我国联网年均增长率达到30%,预计到2018年将有400亿个“”通过
    发表于 12-11 15:56

    联网时代 智能穿戴设备的挑战与解决方案

    科技改变生活,先进的科学技术确实给我们的生活带来了诸多便利,以智能手机为中心的可穿戴设备和智能家电经常使用蓝牙、ZigBee和WiFi等无线连接技术
    发表于 01-06 10:09

    组合三种传感器和一个蓝牙收发,实现12自由度测量

    无线收发设计公司 Dialog Semiconductor 实现低功耗蓝牙技术将可穿戴
    发表于 07-10 09:51

    可穿戴技术价值的增加

    交互。健康与健身领域是可穿戴设备所瞄准的首批市场之一,通过其内置的加速计,这些设备能够分析用户的运动情况。这项技术可穿戴设备增添了新的乐趣,但是无线连接
    发表于 09-07 14:41

    可穿戴技术促成无线半导体业务大幅扩张

    什么类型的可穿戴设备– 有人断言如仿生隐形眼镜或传感器接口“纹身”等设备将是下一个重要趋势-但我们知道的是,半导体技术必须能够满足这迅速演变发展的需要。一些关键的特性包括:1. 高能效。更多的功能往往
    发表于 10-24 09:05

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

    介绍如何在数据变化不频繁的传感器应用中,有效地利用BLE维持低功耗无线运行。  目前,全球正进入一个各种系统都需要采集和交换数据的联网(I
    发表于 11-12 10:45

    低功耗蓝牙无线传感器

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

    低功耗蓝牙技术可穿戴电子中有什么应用?

    可穿戴设备可分为哪几类?低功耗蓝牙技术可穿戴电子中有什么应用?
    发表于 05-24 07:16

    可穿戴技术所带来的增值

    可以用来提醒用户定期为植物浇水,或者在用户饲养的宠物偷偷跑出家门时及时发出警报。现在,虽然可穿戴设备的外形和大小没有太多的变化,但是其功能却在不断地增加。通过近场通信 (NFC) 或蓝牙低功耗(BLE)
    发表于 11-18 07:42