4423| 0
|
【PBL项目实战】户外智慧农场项目实战系列——7.Mind+Mixly... |
本帖最后由 岭师人工智能素养教育共同体 于 2022-10-3 03:03 编辑 【PBL项目实战】户外智慧农场项目实战系列——7.Mind+Mixly双平台工业级多合一空气质量传感器数据上云及云端可视化展示 本系列以户外智慧农场项目实战为项目式学习PBL案例,主要讲解ESP32主控板与阿里云物联网平台的通讯过程。当然,本文的使用方法理论上通用于所有ESP32主控,我们也开源了Mind+和米思齐Mixly双平台的阿里云物联网平台图形化库。大家可以在如下仓库找到:
Mixly阿里云物联网平台MQTT图形化库: https://gitee.com/LNSFAIoT/Mixly-Alibaba-Cloud-IoT-Platform-MQTT-graphical-library.git Mind+阿里云物联网平台JSON解析图形化库: https://gitee.com/LNSFAIoT/Mindplus-Alibaba-Cloud-IoT-Platform-JSON-parsing-graphical-library.git Mind+多合一空气质量传感器(RS485)图形化库: https://gitee.com/LNSFAIoT/mindplus-all-in-one-air-quality-sensor.git Mind+多合一土壤传感器(RS485)图形化库: https://gitee.com/LNSFAIoT/mindplus-all-in-one-soil-sensor.git Mind+多合一气象传感器(RS485)图形化库: https://gitee.com/LNSFAIoT/mindplus-all-in-one-weather-sensor.git Mind+Mixly双平台ESP32 LED点阵大屏图形化库: https://gitee.com/LNSFAIoT/Mindplus-Mixly-ESP32-LED-matrix-large-screen-graphical-library.git 其他开源系列请见 本系列将会有: 1、【PBL项目实战】户外智慧农场项目实战系列——阿里云物联网平台的开通与云端可视化应用的新建 https://mp.weixin.qq.com/s/5OT57-_QlN7lwRMWvey4lw https://mp.weixin.qq.com/s/r_NeJdPoio9IVselx6Ru1Q 5、【PBL项目实战】户外智慧农场项目实战系列——天气预报API接口对接 https://mp.weixin.qq.com/s/jditkIEd-UK6cSQyCC_-Eg 6、【PBL项目实战】户外智慧农场项目实战系列——文本与图片、背景云端响应 https://mp.weixin.qq.com/s/eIozKfmCBo8Afp5QoorqWQ 7、【PBL项目实战】户外智慧农场项目实战系列——Mind+Mixly双平台RS485工业级多合一空气质量传感器数据上云及云端可视化实时展示 https://mp.weixin.qq.com/s/ZEUEEo91pBoxjRlhjGzrjA8、【PBL项目实战】户外智慧农场项目实战系列——Mind+Mixly双平台RS485工业级多合一土质检测传感器数据上云及云端可视化实时展
智慧农场中植物生长的空气环境质量是需要考虑的重要方面。适当的空气质量参数能够促进植物的生长,而含量过多或过少会在一定程度上影响植物的生长,如当二氧化碳的浓度多高,反而会抑制植物的光合作用;浓度过低,同样也不利于植物光合作用。同样的还有空气中PM10、PM2.5、甲醛和TVOC等环境指标,这其中不仅仅是对植物产生影响,对人的身体健康也有影响。基于此,在本文中我们将采用工业级RS485多合一空气质量传感器对空气中的温度、湿度、二氧化碳、PM10、PM2.5、甲醛和TVOC进行采集并在云端进行实时展示,通过云端可视化展示我们可以随时随地了解到农场作物所处的空气质量参数变化。 硬件:ESP32E(+ESP32E拓展板)、RS485多合一空气质量传感器、458转TTL模块 软件环境:Mind+ 或 Mixly 其他:杜邦线、Type-C烧录线 接线示意图 图1 RS485多合一空气质量传感器接线图 485变送器与ESP32拓展板连线时注意: 接线部分需要反接,(主控板)RX -> (485转TTL)TX (主控板)TX -> (485转TTL)RX。 !由于不同的485转TTL模块不同,若无数据,TX与RX接线需要再反接一下。 修改设备地址须知 RS485多合一空气质量传感器需要修改传感器的设备地址时,要先接通电,在上电状态下通过拨码开关拨到想要的地址,再断电后重新上电即可用新设置的地址初始化。 阿里云端 阿里云创建Web应用,首先需要新建产品和设备,具体操作在“【PBL项目实战】户外智慧农场项目实战系列——2.产品与设备的新建及与云端可视化应用的关联”中已详细讲解,可前往查看并自主创建产品和设备。 创建多合一空气质量传感器的自定义功能 接下来具体介绍创建多合一空气质量传感器的自定义功能,依次创建温度、湿度、二氧化碳、PM10、PM2.5、甲醛和TVOC的功能属性。 温度 图2 创建温度功能详情 湿度 图3 创建湿度功能详情 二氧化碳 图4 创建二氧化碳功能详情 PM10 图5 创建PM10功能详情 PM2.5 图6 创建PM2.5功能详情 甲醛 图7 创建甲醛功能详情 TVOC 图8 创建TVOC功能详情 成功创建所有的自定义功能属性的页面,如图9所示。 图9 成功添加自定义功能界面 发布上线 添加完功能定义后,如图10所示,需要点击功能定义页面右下角的【发布上线】。 图10 发布上线 在【确认已查看当前版本与线上版本的比对结果】前打勾,并点击确定。 图11 确认上线 物模型发布成功。 图 12 发布成功 Web应用项目的创建、组件的配置以及在线调试 关于Web应用项目的创建、组件的配置以及在线调试,具体操作在“【PBL项目实战】户外智慧农场项目实战系列——3.云端应用可视化页面开发及设备数据源的配置与调试”中已详细讲解,可前往查看并自主创建Web应用、配置组件以及调试组件。 这里显示传感器参数的组件采用的是【文字】组件,该组件的配置在“【PBL项目实战】户外智慧农场项目实战系列——6.文本与图片、背景云端响应”项目中有详细介绍,同时基于该文章的图片和背景的设置,读者可自主添加更多个性化设置。 配置成功后,可点击右上角眼睛状的按钮进行移动应用预览。 图13 预览按钮 预览效果如图14所示。 图14 电脑网页预览效果 Mind+端 网络WiFi的初始化和连接阿里云平台的MQTT协议初始化,这里给出完整初始化代码,如图15所示。 具体代码介绍在本系列的“【PBL项目实战】户外智慧农场项目实战系列——4.ESP32E数据上云及云端可视化实时展示”中已详细说明可前往查看。 图15 WiFi与MQTT协议初始化 我们自主研发了多合一空气质量传感器的图形化积木和阿里云物联网平台JSON解析的积木,积木的链接可移步至文章开头获取。具体的第三方用户库的导入详细讲解和阿里云物联网平台JSON解析的具体代码讲述已在本系列中的“【PBL项目实战】户外智慧农场项目实战系列——4.ESP32E数据上云及云端可视化实时展示”已详细讲诉,可前往查看。 第三方库文件成功导入的积木截图如图16所示。 图16 JSON解析库的导入 初始化多合一空气质量传感器的过程,如图17所示。 图17 初始化多合一空气质量传感器 编写阿里云多参数上报的图形化积木的过程,如图18所示。 图18 阿里云多参数上报的图形化积木 图19 键值对积木与合并积木的详解 其他参数上报的键值对也需要按照相同的格式,只有按照阿里云JSON的标准格式上报参数,阿里云平台才能将上报的数据按照平台的解析算法提取出有效标识符和对应的参数值,否则无法正确解析的数据会被平台当成无效数据从而丢弃。 温度、湿度和PM10的键值对按图20所示编写,其他功能属性以此类推。 图20 温度、湿度和PM10对应的键值对 注意:设备的数据每次上报阿里云的时间间隔必须大于30秒~30分钟,否则短时间内频繁的上报会被封号。(被封号的现象就是上传的数据无法进行实时显示,且从阿里云的日志服务中查看会有设备下线异常的错误,错误码为427) 适当加上延时保证设备与阿里云物联网平台的通信质量。在这里提出一个思考: 如图21所示,当代码直接这样加上延时后,有什么弊端呢? 图21 加上延时后的完整代码 参考代码如下图所示。 你有没有更好的想法呢?请自主实现,也欢迎交流讨论! 完整代码如图22所示,由于MQTT上报语句包含多个参数,所以同时上报多参数的语句相对较长,在编写图形化积木代码时也要注意语句逻辑,避免写错。 图22 Mind+完整代码 完整代码可前往文末下载。 Mixly 网络WiFi的初始化和连接阿里云平台的MQTT协议初始化,这里给出完整初始化代码,如图23所示。 具体代码介绍在本系列的“【PBL项目实战】户外智慧农场项目实战系列——4.ESP32E数据上云及云端可视化实时展示”中已详细说明可前往查看。 图23 WiFi与MQTT协议初始化 开源硬件多合一空气质量传感器和阿里云JSON解析图形化积木分别如图24、25所示。 图24 阿里云物联网平台JSON解析积木 图25 多合一空气质量传感器积木 编写传感器部分的图形化代码的过程,如图26所示。 图26 传感器部分的图形化代码 编写阿里云多参数上报的图形化积木的过程,如图27所示。 图27 阿里云多参数上报的图形化积木 图28 合并积木的详解 JSON键值对的格式为参数的【标识符+值】,将JSON键值对输入框拖拽到上一步写好的多参数合并语句中即可,如图29所示。 图29 阿里云键值对积木的详解 图30 获取空气质量参数并上报 图31 键值对的“键”和“值” 温度、湿度和PM10的键值对按图32所示编写,其他功能属性以此类推。 图32 Mixly空气质量各参数对应的键值对 这里需要注意,检查上报所对应的Topic是否有效。 图33 Mixly上报Topic 注意:设备的数据每次上报阿里云的时间间隔必须大于30秒~30分钟,否则短时间内频繁的上报会被封号。(被封号的现象就是上传的数据无法进行实时显示,且从阿里云的日志服务中查看会有设备下线异常的错误,错误码为427) 适当加上延时保证设备与阿里云物联网平台的通信质量。在这里提出一个思考: 如图34所示,当代码直接这样加上延时后,有什么弊端呢? 图34 加上延时后的完整代码 参考代码如下图所示。 你有没有更好的想法呢?请自主实现,也欢迎交流讨论! 图35 Mixly完整代码 完整代码可前往文末下载。 上云显示 烧写代码后,等待连WiFi和MQTT,网页实时展示上报成功的数据,如图36所示。 图36 电脑网页预览的最终效果 以上就完成了Mind+Mixly双平台RS485工业级多合一空气质量传感器数据上云及云端可视化实时展示的过程。 以本系列前面基础篇的相关介绍为基础,本文对开源传感器的读取、上报以及云端的配置进行讲解,开源硬件的上云和云端可视化展示是不是简单方便呢?别走开!接下来会有更多的开源硬件上云教程发布,敬请期待下一篇! 完整测试代码可前往【人工智能素养教育共同体】的官方gitee网站下载: Mind+多合一空气质量传感器(RS485)图形化库: https://gitee.com/LNSFAIoT/mindplus-all-in-one-air-quality-sensor.git THE END 关注我们 更多精彩内容请关注我们的微信公众号:人工智能素养教育共同体,欢迎添加我们的企业微信,加入智慧农场项目学习群。 微信公众号:人工智能素养教育共同体 本文原创,转载请注明出处! |
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed