第6单元第18课《高级功能的实现》第一节 教案【河北大学版】《信息科技》八年级

资源下载
  1. 二一教育资源

第6单元第18课《高级功能的实现》第一节 教案【河北大学版】《信息科技》八年级

资源简介

中小学教育资源及组卷应用平台
第18课《高级功能的实现》教学设计
课题 高级功能的实现 单元 第六单元 学科 信息科技 年级 八年级
核心素养目标 信息意识:知晓校园网络中断时数据保全的重要性,理解本地存储与屏幕记录的价值,关注数据安全与连续性。计算思维:拆解 “网络检测 - 数据处理” 流程,掌握相关编程逻辑,学会用技术解决实际问题。数字化学习与创新:能用 MicroPython 编写网络检测、本地存储程序,整合模块实现自动化数据处理。信息社会责任:了解数据规范的作用,树立数据规范化意识,避免数据失效。
教学重点 掌握 MicroPython 网络状态检测的方法与代码实现。理解本地数据记录的 CSV 格式规范及os模块文件操作。
教学难点 网络异常处理与离线模式的逻辑设计。多模块程序的整合与调试。
教学过程
教学环节 教师活动 学生活动 设计意图
导入新课 第6.18课 高级功能的实现问题情境在实际工作环境中,校园网络可能会因土木施工、电力检修、网络维护等各种原因出现中断。为了最大限度地保全数据,可以采取两种办法,一种是在无网络条件下使用开发板内部的闪存(快闪存储器)保存数据,另一种是使用屏幕显示数据并人工抄写记录。这两种方案如何实现?各有什么优势和不足? 思考校园网络中断时,用开发板闪存存储数据和屏幕显示人工抄写两种数据保全方案的实现方式、优势与不足。 引发学生对数据保全场景的思考,为后续网络检测和本地存储知识的学习做铺垫。
讲授新课 新知讲解:实践探究一、网络状态检测1.无线网络连接检测MicroPython 提供网络连接配置功能,通过wlan.isconnected( )检测开发板是否连入无线网络:返回True:网络连接正常返回False:网络断开或无法连接(可能原因:信号差、接入点名称错误、密码错误)(详细内容和代码见教材p150页)试一试运行以上程序,然后关闭无线路由器电源来模拟网络中断情况,观察微控制器联网状态的变化;然后恢复无线路由器供电,再次观察微控制器的联网状态。将观察结果填入表6-9。表6-9网络状态检测测试操作观察结果无线路由器通电开机,微控制器程序运行程序打印 “网络连接正常”,微控制器成功接入无线网络程序运行期间关闭无线路由器电源程序打印 “网络连接断开或无法连接”,网络状态由连接变为断开恢复无线路由器供电程序重新打印 “网络连接正常”,微控制器自动重新连接网络测试发现网络恢复后微控制器可自动重连网络,该功能由wlan.config(reconnects=n)控制,其中n是重连尝试次数。n=-1(默认):不限制重新连接尝试次数。n=0:不进行自动重连。(详细内容见教材p151页)小知识无线网络连接检测部分高端开发板支持 “多接入点切换” 功能,即预设多个无线网络(如校园网、备用热点),当当前网络断开时,程序会自动尝试连接下一个预设网络,进一步提升网络稳定性,其底层逻辑是在wlan.isconnected()判断为False后,增加遍历预设接入点的代码逻辑。2.互联网和云平台连接检测微控制器连入无线网络不一定能正常发布数据,可能存在路由器未接入互联网、云平台离线等问题,需进一步检测。检测原理依据 HTTP 协议:网页正常打开时,服务器响应状态码为200。若为其他状态码,说明无法访问服务器。工具:MicroPython 的urequests模块,可模拟浏览器访问网页并获取状态码。 (详细内容和代码见教材p151,152页)异常:互联网中断或服务器关机时,程序会异常报错并停止运行,无法持续检测状态。解决方案:使用 MicroPython 的try…except…异常处理语句,系统尝试运行try内的代码若出现异常,转至except处理,程序不终止。 (详细内容和代码见教材152页)网络或服务器出现问题 → 设备进入离线模式(仅在微控制器内部存储数据)网络和服务器正常 → 设备处于非离线模式(通过网络发布数据,云平台存储) (详细内容见教材152页)(详细内容见教材p4页)图6-15监测设备网络检测流程图检测流程需循环运行,实时响应网络和服务器状态变化。通过offlineMode变量标记模式,分离 “网络判断” 与 “数据处理” 代码,提升可读性。 (详细内容和代码见教材p153页)试一试读懂网络和服务器状态检测程序,补全模块导入和网络连接相关代码。然后自己写一段条件判断程序,使监测设备根据offlineMode的值来确定是否向服务器发布数据。根据网络和云平台状态检测结果设置离线模式的参考程序(详细代码见教材p154页)提示:导入模块:network(无线网络)、urequests(云平台检测)。网络连接:初始化 WLAN,激活并连指定 WiFi。条件判断:offlineMode 为 False 时发布数据;为 True 时不发布(可本地存储)。模式设置:用 wlan.isconnected () 判断 WiFi 连接,urequests.head () 查云平台状态码(200 正常),以此设 offlineMode 值。二、本地数据记录存储需求存储内容:温度、湿度、时间日期等数据。存储介质:开发板内置 2MB 闪存(满足临时断网需求)。支持模块:os模块(MicroPython 文件读写功能)。(详细内容见教材p154页)由os模块支持,读写文件需先打开、后关闭,open()语句可自动完成这一过程。第一个参数:文件名。第二个参数:打开模式,常见模式及含义如下表。可在微控制器内部存储空间创建文件并写入字符串格式内容(详细内容和代码见教材155页)表6-10三种打开模式含义打开模式含义r只读模式,可读取文件内容w写入模式,清空原有内容并写入新内容a追加模式,在已有内容尾部添加新内容查一查os模块支持的文件打开模式还有哪些?它们都有什么含义?打开模式含义r+读写模式,可读取也可写入,写入时从文件开头覆盖内容,文件不存在则报错w+读写模式,覆盖原有内容(或创建新文件),可同时读取写入的内容a+追加读写模式,在文件末尾追加内容(或创建新文件),可读取文件全部内容为方便计算机电子表格软件处理,开发板数据记录采用 CSV 格式:将温度、湿度、时间日期用英文逗号分隔,每条数据换行,示例程序以5秒间隔按此格式记录数据。 程序运行一段时间后,就可以将数据文件下载到计算机中,并使用电子表格软件查看。如图6-16所示。(详细内容和代码见教材p155页)图6-16 使用电子表格软件打开CSV数据文件试一试将之前的网络状态检测、数据发布和本地数据记录程序进行整合。假设在开发板启动时网络正常,参考图6-17所示流程,实现网络和服务器正常状态下的数据发布,以及网络和服务器非正常状态下自动将数据以文件形式存入开发板内置存储器。图6-17系统运行流程简图网络与 MQTT 初始化:完成 WiFi 连接和 MQTT 服务器连接配置。传感器与时钟:读取 DHT22 温湿度数据,通过 NTP 校对系统时间。函数封装:将 MQTT 发布、本地文件写入功能封装为函数,提升代码可读性。主循环逻辑:每隔 5 秒读取传感器数据,检测网络和服务器状态,若正常则发布数据,否则将数据以 CSV 格式写入开发板本地文件。三、课堂练习完成单项选择题:1.以下哪种情况会导致wlan.isconnected()返回False?( B )A.开发板连入 WiFi 但未接入互联网 B.开发板未连入任何 WiFiC.云平台服务器离线 D.HTTP 响应状态码为 4042.使用os模块以追加模式打开文件,应选择的参数是( C )A. r B. w C. a D. r+完成多项选择题:3.本地数据记录采用 CSV 格式的优势有( ABC )。A.便于电子表格软件快速处理B.数据格式简洁,节省存储空间C.支持多条数据批量写入D.可直接用于 MQTT 数据发布四、拓展延伸如何优化本地数据存储程序以降低功耗减少文件写入频率,将 “5 秒一次写入” 改为 “每 30 秒批量写入一次”(如先将数据暂存到内存列表,达到 6 条后一次性写入文件),减少闪存擦写次数(闪存擦写功耗较高)。使用 “深度休眠” 模式,在两次数据采集 - 存储间隔期间,让开发板进入深度休眠,仅保留实时时钟唤醒功能,休眠时功耗可降至微安级。选择低功耗存储模式,如关闭文件系统的缓存功能(部分开发板支持),减少不必要的内存访问,降低功耗。常见HTTP状态码400(请求错误,如请求参数格式错误)。403(禁止访问,服务器拒绝请求)。404(资源未找到,如访问的网页地址不存在)。500(服务器内部错误,如服务器程序崩溃)。503(服务不可用,如服务器过载)。在物联网云平台检测中,若出现 404 或 500,需检查访问地址是否正确或联系平台维护人员。 观看视频: 运行无线网络连接检测程序,观察并记录微控制器联网状态变化。完成试一试,运行程序,观察微控制器联网状态的变化。学习小知识,了解无线网络连接检测。学台连接检测程序,理解互联网和云平台连接检测。完成试一试,补全模块导入和网络连接相关代码。学习os模块文件打开模式,理解 CSV 格式规范。完成查一查,补充os模块支持的文件打开模式。学习相关知识。完成试一试,将记录程序进行整合。完成练习题。进行知识拓展。 通过实际操作,掌握网络状态检测的基本方法,体会程序对网络状态的实时响应。。让学生通过实际操作直观感受网络状态检测程序的运行效果。拓展学生对无线网络连接稳定性技术的认知,激发学生对提升网络可靠性的思考。让学生掌握云平台连接检测的方法,理解异常处理在保障程序持续运行中的作用,提升学生对网络层复杂状态的分析和处理能力。提升学生的代码阅读理解与补全能力,培养根据网络状态自主设计数据发布条件判断的编程思维。。让学生掌握本地数据存储的方法和格式规范,理解本地存储在数据保全中的作用,提升学生对数据格式和文件操作的认知。拓展学生对文件操作模式的知识储备,培养自主探究和信息检索能力,为灵活运用文件操作功能解决实际数据存储问题奠定基础。让学生掌握本地数据存储的 CSV 格式要求及实现方法,理解本地存储在数据保全中的实用性,提升对数据格式与文件操作的综合应用能力。培养学生的程序整合能力,让学生全面掌握数据保全系统的完整逻辑,提升解决复杂场景下数据处理问题的综合编程能力。考察学生学以致用的能力,深化对本课知识内容的理解和掌握。拓宽学生知识面。
课堂小结 高级功能的实现 第一节1.网络状态检测2.本地记录记录3.完成课堂练习4.进行知识拓展 总结回顾 对本节课内容进行总结概括。
课后作业 围绕 “校园气象站长期运行中,本地存储的数据可能面临哪些风险?如何规避这些风险?”,结合本课知识,写下自己的思考,提出 2-3 条具体的风险规避建议(如定期备份数据),字数不少于 200 字。 布置作业 拓展学生的学习能力
课堂板书 观看板书 强调教学重点内容。
21世纪教育网 www.21cnjy.com 精品试卷·第 2 页 (共 2 页)
HYPERLINK "http://www.21cnjy.com/" 21世纪教育网(www.21cnjy.com)

展开更多......

收起↑

资源预览