概况
温湿度传感器作为基础传感类别,在智能家居领域应用广泛。通过温湿度传感器采集温度和湿度,可以实现多样化的智能场景联动。比如在炎热的夏季,温湿度传感器检测到室内温度高于 29℃,联动打开空调,当室内温度降到 23℃ 以下时,联动关闭空调,整个过程自动智能控制调节,省心又省电,让温度始终处于舒适的范围,极大的方便了我们的生活。 基于涂鸦平台可以简单、快速完成一款智能温湿度传感器的开发,在 App 端实现产品智能联动,本文将介绍如何使用涂鸦三明治开发板快速完成一个智能温湿度传感器产品
物料清单
涂鸦三明治温湿度传感器功能板 数量:1查看详情
涂鸦三明治 Wi-Fi MCU 通信板(E3S) 数量:1查看详情
步骤
第 1 步:方案介绍
MCU 方案与 SoC 方案不同,传感器和联网模组的驱动代码写在 MCU 中,开发者可以自己开发 MCU 代码,拥有更多的可玩性。因此在开发前,我们需要对方案有个整体了解,方便后续开发。
涂鸦三明治开发板温湿度传感套件中,传感器板负责采集温湿度数据通过 I2C 接口传给 MCU ,MCU 控制板,通过串口 与 Wi-Fi 通信板连接,使用涂鸦智能 App 配网,可以将湿度传感器数据展现在手机端,并与其他智能设备联动。MCU 型号为 STM32G071RB,Demo 教程采用 Arduino IDE 进行编程,可方便的移植于各 Arduino 系列开发板。
第 2 步:硬件连接
本次使用的涂鸦三明治开发板温湿度传感套件主要包含:
温湿度传感器功能板,板载 SHT30 温湿度传感器,I2C 接口,负责温湿度数据的采集传输。
Wi-Fi MCU 通信板,板载涂鸦 TYWE3S 模组,负责智能化连接。模组已烧录通用固件,MCU 对接涂鸦串口协议,即可使用模组+App+云涂鸦一站式智能化服务。
MCU控制板,采用ST官方 NUCLEO-G071RB 开发板,负责传感数据接收和模组通讯控制。NUCLEO-G071RB 开发板支持 Arduino 接口,本片教程demo我们也将基于 Arduino 开发演示。
将三明治开发板套件控制板、通讯板、功能板拼接组装,实物效果如下图。
第 3 步:例程下载
软件开发过程主要基于 Arduino 实现 MCU 与传感器和模组协议对接。首先调通 MCU 和模组的通讯,可以实现App配网,MCU 数据传输到App。步骤 3.1:环境搭建环境搭建教程:三明治开发板环境搭建环境搭建的教程主要讲如何在 Arduino IDE 中添加ST开发板,集成 STM32CubeProgrammer 实现编译下载功能,初学开发者需仔细阅读。
步骤 3.2:例程下载 环境搭建好后,我们可以给组合好的温湿度传感器demo套件下载例程,使用涂鸦智能App配网体验demo功能。 温湿度传感器demo例程下载:温湿度传感器demo例程功能说明:长按 MCU 开发板用户按键超过2s,可以切换模组配网模式,使用App配网。例程使用 SHT30 周期模式,传感器本地周期采集更新数据,短按用户按键可以触发温度上报。
第 4 步:开发实战-通信板调试
体验了 demo 例程后,接下来我们详细讲解讲解整个demo例程实现的具体步骤,开发者可以根据步骤,快速开发一个属于自己的温湿度传感器。步骤 4.1:创建产品创建工程,下载移植涂鸦 MCU SDK 开发包详细教程:MCU快速上手具体步骤教程已比较详细,这里不做赘述,不过在创建产品过程中要注意我们要创建的产品是温湿度传感器,MCU 对接时选择自定义方案,才能下载到 MCU 开发资料包。
固件选择时要注意,Wi-Fi 模组默认的固件是通用固件,非低功耗固件,我们需要将功耗类型改为标准功耗,固件选择标准通用固件,我们才能下载到相关 MCU 开发包。
第 5 步:开发实战-功能板调试
SHT30驱动下载链接:SHT30_Drive.zip添加SHT30驱动到工程中,以周期模式获取为例,应用层参考代码:
能成功获取温湿度传感器数据后,MCU 需要将数据传输给App展示。模组端对同样的数据会进行过滤,因此建议数据周期性获取,当数据有改变时再上报,减少数据上报频率。上报函数如下:
第 6 步:场景联动(扩展功能)
所有功能调试通过后,App 端已经可以接收到温湿度传感器的数据。智能传感器最大的应用场景是用来收集传感数据来和其它产品进行联动,如果开发者手中有涂鸦生态设备或开发板,可以在App端实现场景联动功能的配置。 场景联动设置教程:场景联动设置
小结
基于涂鸦平台,使用涂鸦三明治开发板,Arduino IDE编程,快速实现一款智能温湿度传感器产品原型搭建