180059| 2
|
[M10项目] 【精选项目】基于数据可视化的物联网风速监测仪 |
本帖最后由 Doughnut 于 2022-9-30 14:38 编辑 基于数据可视化的物联网风速监测仪 活动背景
作为一个广东人,基本上每年都要经受台风的洗礼,也深知台风给种植户带来的危害,虽然每次都有天气预报,但是基本上都是一个大的区域的,对于自己所在的位置,能否有更精确的数据监测?
几年来一直想要做一款能监测风速的产品,但一直没有一个较好的方向,直到今年手上拿到了行空板,在体验了行空板强大的物联网和数据可视化功能之后,决定结合风速传感器,制作一个基于数据可视化的物联网风速测速仪。 任务目标 1. 利用JL-FS2风速传感器监测周边的风速,把监测到的风速值在行空板上显示出来。 2. 利用“matplotlib”库把反馈回来的数值进行数据可视化显示。 3. 运用行空板自带的SIoT服务和热点模式的物联网功能,开启SIoT物联网系统,将数据同步传输到物联网平台以便进行查看,做好数据存储和监测。 知识点 1. JL-FS2风速传感器应用。 2. 加载并使用“matplotlib”库,把数据进行图形化。 3. 能够开启SIoT服务和热点模式的物联网功能。 4. 能运用物联网功能向物联网平台发送消息并进行查看。 材料清单 1. 硬件清单 主控器为行空板(点击购买)。 传感器为JL-FS2风速传感器(点击购买)。 其他模块包括12V电池、电源接线端子母头、Type-C&Micro二合一USB线等。 2. 软件清单 Mind+编程软件x1 3.其他 激光切割的底座 知识储备 1. 什么是matplotlib图表库 Matplotlib的主要作用是用来生成绘图,饼图,功率谱,条形图,错误图,散点图等。 它是一个Python的2D绘图库,以各种硬拷贝格式和跨平台的交互式环境生成出版质量级别的图形。 2. Mind+(基于Scratch3.0)图形化编程
3. 行空板SIoT服务和热点模式的物联网功能
SIoT也是为了帮助中小学生理解物联网原理,并且能够基于物联网技术开发各种创意应用。因为其重点关注物联网数据的收集和导出,是采集科学数据的最好选择之一。使用时,开启SIoT服务的行空板我们就可以当作一台服务器,连接传感器以检测数据的行空板(设备)我们可以当作客户端。 如果在同一块板子上既开启SIoT服务,又连接传感器来检测数据,那么它既是客户端又是服务器。 (1) 连接行空板,登录siot服务器界面。输入网址:http://10.1.2.3/pc/application-switch (2) 打开页面,查看服务器数据 动手实践 1.硬件搭建 把风速测速仪连接到行空板上,该部分连接最难的地方在于风速测速仪供电电压为“DC12-24V ”,行空板的工作电压为3.3V,因此不能直接由行空板为其供电,需要连接到外部的直流电源,因此这里需再额外增加一个供电电源。外接电源的正极直接接到风速传感器,负极与行空板的负极和电源负极共同连接,黄色信号线直接连接到行空板的信号线,蓝色线留空即可。 硬件设计原理图 硬件实际连接图 2. 制作监测仪底座。
3.程序编写
4. 完整程序参考 5.运行测试程序
在屏幕上面可以看到当前的风速,以及风速变化产生的曲线 在SIOT服务器上面也可以实时查看到风速变化的值 点击自动刷新,数据会实时进行变化 点击显示图表,对数据可视化 可以看到该图形与行空板上面显示的图形是一致的 6. 程序上传至行空板 因为目前Mind+没有在模块化的界面一键上传到行空板的功能,行空板也无法运行(****.sb3)格式的文件,因此需要先将代码复制到python文件中,生成新的(****.py)文件再上传到行空板。 在代码区全选代码,并进行复制 回到代码界面,并在行空板中新建文件、命名 在文件上面点击右键,选择在编辑区打开 把复制的文件粘贴到代码区。关闭、保存,完成程序的上传 7. 操作行空板进行最终测试 切换运行程序,选择对应的程序运行 查看运行结果 实地检测 图为作者在操场监测风速的过程 拓展 目前只是完成了风速的测试,同学们可以根据掌握到的知识,加入更多的传感器,如温湿度传感器、空气质量传感器等,对校园或者种植园环境进行更多相关数据的监测。 演示视频 |
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed