物联网校园气象站系统设计
2024-05-10主讲人:张嘉宇
主讲人:张嘉宇
张嘉宇
DFRobot课程开发工程师,编写了“信息技术高中基础教学课程”“行空板Python入门教程”“云雀气象仪入门教程”等系列科创类文章百余篇,收获超百万浏览量,曾荣获VEX机器人世锦赛冠军。
教学背景
天气是我们日常生活中不可或缺的一部分,对我们的校园生活也有着举足轻重的影响。无论是课间活动、运动会,还是户外考试,学校都需要根据天气情况来进行调整和策划,以确保学生的安全和活动的顺利进行。因此,及时、准确地了解气象数据,能够帮助学生和教职工做出明智的决策和安排。
教师将在本案例中引导学生搭建一个物联网校园气象站系统,实现校园内气象数据的实时获取,并能够在学校的不同地方进行远程查看,同时依据天气变化远程控制窗户开关。
教学目标
1.认识“云雀气象仪”的特点及功能。2.认识物联网、SIoT、MQTT。3.学习物联网气象站系统的架构。4.学习通过编程实现向物联网平台发送并接收数据的方式。
教学重點与难点
教学重点:物联网气象站系统的架构设计。
教学难点:编程实现物联网系统数据的收发。
教学过程
一、情境导入
师:同学们,今天我带来了一个小神器,你们看这是什么?
学生观察,描述设备特点。
师:很好,这款设备叫“云雀气象仪”,你们知道它有什么用吗?
生1:是不是可以测量气温、湿度之类的?
师:没错,它不仅可以测量温度和湿度,还可以测量气压、风速和风向。我们可以通过编程,让它自动收集这些气象数据。你们觉得这样做有什么好处呢?
生2:我们可以随时了解周围环境的情况,然后做出决策。例如温度高了,可以打开风扇;起大风了,可以关闭窗户。
师:非常好!但是如果我们将“云雀气象仪”放置在操场或者教学楼楼顶,又想在教室查看这些数据,再远程控制教室窗户开关,可以怎么做呢?
生3:我们可以把数据发送到网络上,然后通过手机或电脑查看。
师:同学们都很棒,我们可以把数据发送到物联网平台。这样,无论我们在学校的哪里,只要有网络,就能查看到这些气象数据,继而远程给教室开关窗户。今天的课程,我们就来学习如何搭建一个属于我们自己的物联网校园气象站系统。大家准备好了吗?
学生们:准备好了,老师!
二、知识储备
教师先对理论知识进行教授,为学生后期应用开发铺垫知识基础。
1.认识“云雀气象仪”
“云雀气象仪”是一款精致小巧的国产气象传感仪器,能够测量温度、湿度、气压、风速、风向五大气象要素,并输出标准物理量数据。同时,它也兼容Arduino、Micro:bit、行空板等常用的开源硬件控制器。
2.认识物联网
物联网是借助互联网、传统电信网等信息承载体,让所有能行使独立功能的普通物体实现互联互通的网络。通过物联网,我们可以用中心计算机将各种机器、设备连接起来,进行集中管理,实现物物相连。例如,将家中的灯、风扇、空调等电器连入物联网后,可以通过手机来控制它们开关。
3.认识SIoT和MQTT
SIoT是一个为教育定制的物联网系统,可以帮助中小学生理解物联网原理,并且能够基于物联网技术开发各种创意应用。
MQTT是一个基于客户端—服务器的消息发布和订阅的传输协议。该协议中有三种身份:发布者(Publish)、代理(Broker)、订阅者(Subscribe)。信息发布者和信息订阅者彼此之间并没有建立直接的联系,而是通过代理服务器进行中转沟通。只要它们发布和订阅的是同一个主题(Topic),即可相互沟通。
4.“云雀气象仪”扩展库
在Mind+软件中,我们可以通过加载“云雀气象仪”的专属扩展库来实现气象数据的获取,参考编程积木如图1所示。
5.MQTT扩展库
在Mind+中,我们也可以通过加载MQTT扩展库来实现物联网数据收发的功能,参考编程积木如图2所示。
三、动手实践
师:接下来,同学们动动手,通过“云雀气象仪”来实时监测学校环境中的温度、湿度、气压、风速、风向数据,将这些数据显示在屏幕上,之后开启SIoT物联网系统,将数据发送至平台吧!
1.分析设计
师:项目编程正式开始之前,让我们先来分析讨论一下如何设计搭建一个物联网校园气象站系统吧!
首先,我们需要进行硬件连接,将一块行空板作为智能终端,连接传感器和执行器。传感器使用“云雀气象仪”,将其放置在校园中采集气象数据。执行器使用舵机转动来模拟窗户的开关。我们再将第二块行空板作为服务器端放置在中控室,远程读取气象数据和控制教室窗户的开关。然后,我们进行网络配置,将智能终端连接在服务器端板子的热点下。接着,我们开启服务器端行空板的SIoT服务。最后,我们分别给两块行空板编写功能程序,完成系统的搭建。
2.硬件连接
学生通过连接线将“云雀气象仪”和舵机连接到智能终端行空板,并将服务器端和智能终端行空板分别连接到两台电脑。
3.网络配置
教师指导学生开启服务器端的无线热点,并登录行空板网页菜单,为智能终端配置网络,使其连在服务器端的无线热点下。
4.SIoT服务启动
教师指导学生开启服务器端行空板的SIoT应用。
5.程序编写
教师首先指导学生打开编程软件、导入背景素材图片、加载扩展库等,然后讲解智能终端和服务器端各分功能段的程序。智能终端行空板功能流程图如图3所示,服务器端/移动终端行空板功能流程图如图4所示。
6.运行调试
首先,教师指导学生一起运行程序,观察智能终端和服务器端屏幕显示。学生会发现两块屏幕上的气象数据保持同步。然后,教师指导学生点击服务器端屏幕上的“开窗”和“关窗”按钮,学生会发现智能终端的舵机会转动到两个不同的位置。最后,教师指导学生在物联网平台上查看气象数据,并将数据表下载,分析各气象数据的变化规律,评估气象情况。
四、拓展与提升
教师和学生讨论如何优化屏幕显示界面,将气象数据对应的系统时间同步显示出来。
教学反思
本案例通过让学生设计物联网校园气象站系统,让学生学会观察生活,发现物联网在生活中的应用,然后通过物联网技术解决生活中的实际问题。
在教学方法上,本案例通过“以问设答”的教学互动,引发学生自主思考,在提升学生科学素养和创新素养的同时,也培养了学生良好的学习习惯。在项目实践过程中,教师将任务进行拆解,让学生在一个个小任务中逐步发现问题并学会解决问题,不仅锻炼了学生的思维能力,同时也提升了他们的综合素养。