【义教指南】八年级 物联网实践 第9课 互联协议仍沿用

2025-02-263434
AI 快速预览详细 收起
本文介绍了八年级物联网实践课程中如何使用行空板M10信息科技实验盒通过HTTP协议获取互联网数据。学生将学习如何调用API接口并解析返回的JSON数据,最终在屏幕上显示当前时间。通过这个项目,学生可以掌握网络API调用方法,理解物联网中的数据获取过程。


【义务教育信息科技教学指南】八年级 物联网实践与探索模块 第9课中要求学生调用API获得互联网数据,感受物联网中的互联网数据获取,了解传统互联网协议在物联网系统中的局限性。描述原文如下图:

【义教指南】八年级 物联网实践 第9课 互联协议仍沿用图1


【义教指南】八年级 物联网实践 第9课 互联协议仍沿用图2

【义教指南】八年级 物联网实践 第9课 互联协议仍沿用图3

实验设计
结合指南课程中对于利用网络API获取互联网数据的实践要求,我们利用行空板M10信息科技实验盒(后称“实验盒”)上内置的WiFi通信芯片,落地实操,设计了通过API获取时区数据,实验仅需要阅读修改并运行程序,即可帮助学生学习获取API数据方法,体验物联网中的互联网数据获取过程。

9-2 利用HTTP协议获取互联网中的数据

活动目标
学习目标

掌握使用HTTP协议发起请求、访问接口获取数据的办法。
学会对网络接口返回的数据进行解析,强化对python中字典查询的掌握。

实操目标
调用实验盒的网络模块通过API接口获取数据,实现实验盒能显示当前时间(包括日期、时、分、秒)的功能。
【义教指南】八年级 物联网实践 第9课 互联协议仍沿用图4

活动准备
硬件清单

【义教指南】八年级 物联网实践 第9课 互联协议仍沿用图5

软件使用

Mind+编程软件x1
下载地址:https://www.mindplus.cc

活动过程
本次活动只需要使用实验盒来操作即可,实验盒需要通过WiFi接入互联网,然后通过API获取时区数据。
1. 硬件连线
长按ON/OFF按钮启动实验盒。
使用USB连接线将实验盒连接到计算机,同时确保计算机处在一个流畅的网络环境下。

【义教指南】八年级 物联网实践 第9课 互联协议仍沿用图6

2. 准备软件
按照下图步骤,设置Mind+软件编程方式为Python代码编程,并完成实验盒连接。
【义教指南】八年级 物联网实践 第9课 互联协议仍沿用图7

之后我们要将实验盒接入网络。首先我们打开浏览器,输入10.1.2.3后回车进入行空板网页菜单。在左边的网络设置部分,如果看到wifi状态一栏中显示未连接则按下图步骤操作。

【义教指南】八年级 物联网实践 第9课 互联协议仍沿用图8

连接成功后可以在WiFi状态栏下面看到连接的WiFi和IP地址。

【义教指南】八年级 物联网实践 第9课 互联协议仍沿用图9

3. 编写程序
程序的整体思路是用GET方法访问接口,得到返回的数据之后进行解析再将显示在屏幕上面。我们将使用的API网址是:
https://timeapi.io/api/Time/current/zone?timeZone=Asia/Shanghai
如果将它复制粘贴到浏览器中,可以看到获取的网络数据如下图:

【义教指南】八年级 物联网实践 第9课 互联协议仍沿用图10

值得注意的是,该网络接口返回的数据是JSON字符串的格式,在python中,字典(dict)与JSON格式非常相似,都是键值对(key:value)形式。所以JSON字符串格式可以被解析成字典的格式。获取和解析数据的核心程序如下图所示:

【义教指南】八年级 物联网实践 第9课 互联协议仍沿用图11

注意:可直接将第二单元第九课资源文件夹中对应的程序文件拖入“项目中的文件”使用。

【义教指南】八年级 物联网实践 第9课 互联协议仍沿用图12

4. 运行程序
点击界面右上方的运行按钮,运行程序。

【义教指南】八年级 物联网实践 第9课 互联协议仍沿用图13

运行程序后我们就可以看到屏幕上显示的时间了。

【义教指南】八年级 物联网实践 第9课 互联协议仍沿用图14

5. 测试及活动记录
接下来,同学们根据图示的方法修改API。
https://timeapi.io/api/Time/current/zone?timeZone=Asia/Shanghai
*标黄格式为“州/城市”,一些常用的时区标识:

【义教指南】八年级 物联网实践 第9课 互联协议仍沿用图15

我使用的API是 。
我读取到的时间是      /    /             :     :      

思考题:
直接通过浏览器访问程序中提供的接口,你还能读取到哪些数据?
(例如:"dayOfWeek": Tuesday" 表示星期)
如果你想把“ Tuesday”显示在屏幕上,你可以将这部分程序改为:
t_date=u_gui.draw_text(text=(str(data["         "])),
x=20,y=40,font_size=24, color="#000000")

qw6.jpg (16.53 KB, 下载次数: 1014)

STEM教育 · 行空板M10信息科技实验盒:八年级物联网实践_image_3.webp

创作许可协议

本项目采用 None(不开放任何权利,保留所有权利) 进行许可。

评论(0)
- 没有更多了 -