您的位置 首页 产品

运用快速发动渠道加快传感器到云端的衔接

传感器是物联网 (IoT) 的眼睛和耳朵,提供分析和大数据应用需要的信息,帮助用户做出明智的决策。 尽管有许多方法可以连接多个无线传感器来执行该分析

传感器是物联网 (IoT) 的眼睛和耳朵,供给剖析和大数据运用需求的信息,协助用户做出正确的决议计划。 虽然有许多办法能够衔接多个无线传感器来履行该剖析,但衔接到云端依然具有挑战性。 在空间、功率和本钱以及装备和办理一切传感器的一同又要保证强壮的安全性方面特别如此。

为了缩短开发周期,有些开发套件兼具传感器节点开发和云衔接功用。 开发人员无需就怎么将云服务集成到最终用户体会中做出架构决议计划(包含体系将履行的操作以及哪些操作会触发设备的特定功用),即可运用这些“开箱即用”套件相对较快地发动并运转具有传感器功用的规划。

本文将介绍 STMicroelectronics 的 STM32 Nucleo 开发板和 X-NUCLEO 扩展板,它们集成了完结所选运用专门功用所需的组件。闪存 Nucleo 传感器节点 文中还将阐明怎么运用 FP-CLD-BLUEMIX1 扩展软件包,经过几个简略的进程来宣布 Nucleo 传感器节点信号并将 Nucleo 电路板衔接到 IBM Watson IoT 云渠道。1

Nucleo 渠道和软件

STM32 Nucleo 开发板为工程师供给了一种灵敏的办法来测验新的概念,并运用 STMicroelectronics STM32 微操控器构建原型。 这种开发板具有在一切 Nucleo 电路板上通用的扩展针座,因而很简略增加扩展模块。

Nucleo 开发板集成了 ST-LINK / V2-1 调试器/编程器,因而支撑 Arduino 作为其敞开生态体系办法的一部分,而且不需求独自的探头。 开发板随附 STM32 软件库以及各种封装软件示例。

包含 Arduino 在内,有多种不同的盾板能够运用。 运用 STMicroelectronics 的 Morpho 针座的开发板可用于一切运用类型的盾板扩展,包含射频、工业和家庭主动化盾板运用。 此外,还供给蓝牙 LE、Wi-Fi 和视听运用的盾板。

库支撑包含用于 STM32 的规范库,以及对 ARM? 免费在线 mbed 的支撑。ARM? mbed 是一个 IoT 设备渠道,供给操作体系、东西和开发人员生态体系,使规划人员能够评价并开端运用 Nucleo 开发板。

为了协助构成从传感器到云端的衔接,STMicroelectronics 还供给了 FP-CLD-BLUEMIX1,这是一种可在 STM32 微操控器上运转、用于 STM32Cube 的 IoT 节点扩展软件包,可从 STMicroelectronics 的网站获取。2 STM32Cube 的首要方针是使开发运用的进程变得更简略。 为此,该扩展软件包包含了 STM32CubeMX 和 STM32Cube 嵌入式软件库(图 1)。

图 1: FP-CLD-BLUEMIX1 供给了完好的中间件来构建依据 Wi-Fi 衔接的运用,并将 STM32 Nucleo 开发板链接到依据云的服务。 (图片来历: STMicroelectronics)

STM32CubeMX 从图形用户界面生成 STM32 MCU 的初始化 C 代码。 STM32MX 还生成 IDE 安排妥当型项目,供给功耗计算器,并答应直接从 st.com 导入 STM32Cube 嵌入式软件库。

每个 STM32 产品系列都有一个 STM32Cube 嵌入式软件包。 该嵌入式软件库包含用于 STM32 外围设备的硬件笼统层 (HAL) 和低层 (LL) 运用编程接口 (API),以及依据 STMicroelectronics 开发或开源组件的一组中间件(RTOS、USB、TCP/IP、图形等)。 初始化代码、中间件元器件、HAL 和 LL API 与一切 STM32 编译器兼容。

就其自身而言,FP-CLD-BLUEMIX1 软件包经过为 Wi-Fi、NFC 和传感器扩展板供给板级支撑包 (BSP) 来扩展 STM32Cube。 其作用是完结与 IBM Bluemix 云的衔接来传输传感器数据并从云运用接纳指令。 该软件包本质上有助于快速发动端到端 IoT 开发,以便您能够专心差异化规划。

衔接传感器

供给了一个软件界面,用于拜访 Nucleo 开发板的温度和湿度传感器 (HTS221)、压力传感器 (LPS25HB)、运动传感器(LIS3MDL 和 LSM6DS0)以及写入和读取 RFID / NFC 标签。 X-NUCLEO-IKS01A1 包含一切这些传感器(图 2)。

图 2: X-NUCLEO-IKS01A1 是一种运动 MEMS 和环境传感器评价板体系。 (图片来历: STMicroelectronics)

IKS01A1 与 Arduino UNO R3 衔接器布局兼容,环绕 STMicroelectronics 的 LSM6DS0 3 轴加快计 + 3 轴陀螺仪、LIS3MDL 3 轴磁力仪、HTS221 湿度和温度传感器以及 LPS25HB 压力传感器规划而成。

IKS01A1 还包含完结 MQ 遥测传输 (MQTT) 协议的中间件包,以促进 STM32 Nucleo 开发板与 IBM Bluemix Cloud 服务之间的交互。 该软件包含用于检查传感器数据以及经过 IBM Bluemix 操控设备的示例。

除了中间件仓库,还供给了一个用于测验与 IBM Watson IoT 渠道衔接的示例运用。 它用于树立端到端 IoT 运用的原型。 在 IBM Bluemix 云服务中注册 STM32 Nucleo 微体系后,该微体系即可用于传输实时传感器数据。 运用 NFC 动态标签时,用户还能够主动翻开 IBM 供给的试用网页,并将 STM32 Nucleo 开发板上一切传感器生成的数据可视化。

为了将 STM32 Nucleo 微体系与 IBM Bluemix 云进行衔接,STMicroelectronics 移植了 MQTT 运用级网络协议的开源完结。 MQTT 是一种机器到机器 (M2M) IoT 衔接协议,用于经过少数的代码衔接长途设备,特别是在网络带宽有限的情况下。 音讯传递协议是轻型的,因而节省了电力,这使其特别合适用于嵌入式体系中的传感器数据遥测和完结。 在 FP-CLD-BLUEMIX1 中,MQTT 作为中间件库集成到 STM32 软件包中。

功用包中供给了将 X-NUCLEO-IKS01A1、X-NUCLEO-IDW01M1 和 XNUCLEO-NFC01A1 扩展板与 NUCLEO-F401RE 板一同运用的示例运用。 此运用从温度、湿度、压力、加快计、磁力仪和陀螺仪传感器读取数据值,并经过 Wi-Fi 将其传输到 IBM Bluemix。

此运用默许装备为仅针对数据可视化意图在快速发动形式下运转。 但很简略修改为在 IBM Bluemix 中注册和操控设备(需求 IBM Bluemix 帐户)。

注册 IBM Bluemix 帐户

在 IBM Bluemix 云服务中注册 STM32 Nucleo 微体系后,该微体系即可用于树立端到端 IoT 运用的原型,并开端传输实时传感器数据。

登录或创立 Bluemix 帐户(请拜见“参考资料 1”中的完好阐明)即可开端。 注册时有必要供给几个特点和参数,如下所示:

OrganizaTIon ID (i.e., “1w8a05”)。

Device type (i.e.: “stm32_nucleo”)。

UM2007 FP-CLD-BLUEMIX1 software descripTIon

DocID028875 Rev 2 13/23

AuthenTIcaTIon Method (only “use-token-auth” supported)。

Authentication token (i.e., “uUURNRbeQQaX+Fvi8”)。

将设备特点仿制到坐落源代码文件 IBM_Bluemix_Config.c 中的 Config_MQTT_IBM 函数中。 该文件坐落 FP-CLD-BLUEMIX1 软件包的 Projects/Multi/Applications/MQTT_IBM/Src 文件夹中。

然后,ibm_mode 变量需求设置为 “REGISTERED”,如下所示(代码列表):

Void Config_MQTT_IBM (MQTT_vars * mqtt_ibm_setup , uint8_t *macadd):

/* Default Configuration for QUICKSTART. REGISTERED mode requires account on Bluemix */

mqtt_ibm_setup-》ibm_mode = REGISTERED

然后,需求将 IBM Bluemix 中供给的设备特点仿制到名为 IBM_Bluemix_Config.c 的源代码文件中的 Config_MQTT_IBM 函数中。 该文件坐落 Projects/Multi/Applications/MQTT_IBM/Src 文件夹中。

程序履行半途将显现:

/* REGISTERED DEVICE */

/* Need to be customized */

完结后第四到第八即将显现如下:

strcpy ((char*)mqtt_ibm_setup-》username,”use-token-auth); //customize

strcpy ((char*)mqtt_ibm_setup-》password,” uUURNRbeQQax+Fvit8”);

strcpy ((char*)mqtt_ibm_setup-》hostname,”1w8a05.messaging.internetofthings.ibmcloud.com);

strcpy ((char*)mqtt_ibm_setup-》device_type, “stm32_nucleo”);

strcpy ((char*)mqtt_ibm_setup-》org_id, “1w8a05”);

代码列表:IBM 设备注册和特点刺进要求。 完结注册后,STM32 Nucleo 微体系将能够向 IBM Watson IoT 运用发送信息并从其接纳信息。 (来历:STMicroelectronics)

FP-CLD-BLUEMIX1 软件包示例运用包含默许装备,以依据设备的 MAC 地址在 IBM Quickstart 网页3 上检查传感器数据。 URL 页面也被写入 NFC 标签中。 一旦 STM32 Nucleo 开发板衔接到 Wi-Fi 接入点,就会主动与 IBM Bluemix 交互并开端传输传感器数据。 Wi-Fi 扩展板的 MAC 地址和 IBM Quickstart URL 打印在串行终端接口中。

要检查实时传感器数据,能够将 Quickstart URL 仿制并粘贴到 Web 浏览器中。 运用支撑 NFC 的移动设备时,将设备接近 NFC 标签能够更简略翻开网页。 为了完结衔接状况视觉指示,一旦 Nucleo 衔接到 IBM Bluemix,STM32 Nucleo 开发板上的绿色 LED2 将变为 “ON”。 每次传输传感器数据样本时,就会闪耀。

FP-CLD-BLUEMIX1 包自身带有一个 STM32 层, 其间包含一组简略的与上层运用、库和仓库交互的通用多实例 API。 这些通用和扩展 API 依据一个通用结构。 这让它们构建的恣意层(例如中间件层)能够完结其功用,而无需具有既定 MCU 的特定硬件信息。 此结构提高了库代码的可重用性,并保证可轻松移植于其他设备。

软件包的“Documentation”文件夹中的编译 HTML 文件中为用户供给了完好描绘 API 函数和参数的详细技术信息。

IBM 样本运用的首要 API 有:

· ·void Config_MQTT_IBM(MQTT_vars * mqtt_ibm_setup , uint8_t * macadd);装备用于 IBM 云衔接的 MQTT 参数,指定 Wi-Fi 扩展板的 MAC 地址。

· int spwf_socket_create(Network* net, uint8_t * hostname, uint32_t port_number,uint8_t * protocol);翻开套接字,指定主机名、端口号和协议类型(TCP 或 TLS)。 回来成功或失利成果以及网络结构中的套接字 ID。

· ·void MQTTClient(Client* c, Network* network, unsigned intcommand_timeout_ms, unsigned char* buf, size_tbuf_size, unsigned char* readbuf, size_treadbuf_size);装备客户端结构,指定输入参数。

· int MQTTConnect(Client* c, MQTTPacket_connectData* options);衔接 IBM MQTT 署理,指定客户端和 MQTTPacket_connect 数据结构中的参数。 回来成功或失利成果。

· int MQTTSubscribe(Client* c, const char* topicFilter, enumQoSqos, messageHandlermessageHandler);订阅数据结构客户端中界说的 MQTT 主题。 回来成功或失利成果。

总结

对剖析数据不断增加的需求以及简化安排取得数据拜访权限的需求,凸显了无线传感器及其相关 MCU 有必要衔接到云的重要意义。

本文探讨了一个详细完结选项,以及最近发布的硬件开发套件和相关软件怎么使传感器与云端的衔接变得简略。 用户不只能够借此监控目标的当时状况和特定参数,还能够运用云服务来进行猜测性剖析。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/xinpin/chanpin/150917.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部