【新课标】物联网实践与探索-八年级 刷卡开锁易实现
本帖最后由 zoey不种土豆 于 2024-9-2 16:22 编辑日前,国家中小学智慧教育平台上线了《义务教育信息科技课程教学指南》及配套资源,为帮助大家更好的开展实验活动教学,蘑菇云针对“指南”里“物联网实践与探索 八年级全一册”部分制作了一个系列实操活动教程。教程主要选取“第三单元 简单物联功能实践”,重点介绍物联网基本功能,内容贴合“指南”学习活动中的实操项目和探究内容,旨在为老师提供更加清晰的操作步骤和教学内容,帮助老师更方便的开展课堂。
第12课 刷卡开锁易实现
本课项目主要是把日常生活的门锁与 RFID 有机结合,模拟实现刷卡开锁的过程,帮助学生了解刷卡开锁的工作流程,体会系统中的过程与控制,同时,让学生进一步熟悉RFID,实现刷卡开锁功能,体会电子标签编码的唯一性。
12-2 体验舵机模拟开锁学习目标
了解舵机的使用和模拟开关锁作用。
掌握控制舵机的方法。
实操目标
通过按下实验盒的A/B键控制舵机的旋转来模拟门锁的打开和关闭。
硬件清单
实验盒x1
USB线x1
舵机(含舵盘)x1
软件使用:Mind+编程软件
下载地址:https://www.mindplus.cc
活动过程
本次活动主要是要学习舵机的使用方法,在程序中,我们通过A/B按键控制舵机转动至两个特定的角度来模拟门锁的两个状态。
1. 硬件连线
长按ON/OFF按钮启动实验盒,使用USB连接线将实验盒连接到计算机。
将舵机3P线接到P21引脚,舵机可安上舵机盘便于观察。
2. 准备软件
按照下图步骤,设置Mind+软件编程方式为Python代码编程,并完成实验盒连接。
3. 编写程序
按键控制舵机转动模拟开锁如下图所示:
注意:可直接将第三单元第十二课资源文件夹中对应的程序文件拖入“项目中的文件”使用。
4. 运行程序
点击界面右上方的运行按钮,运行程序。
运行程序后按下A/B键观察舵机的反应。
5. 测试及活动记录
接下来,同学们可以根据实践记录表操作一下并将结果记在表中。
提示:由于舵盘安装的差异,每个舵机角度相同但舵盘位置可能不同,可以通过调整舵机旋转角度(修改程序)来模拟开关门的舵盘状态。
[实践操作]填写实践记录表:
(1) 将舵机与实验盒连接,连接的引脚 P 。
(2) 按下A键后,控制舵机旋转至,模拟门的 打开/关闭 。
(3) 按下B键后,控制舵机旋转至,模拟门的 打开/关闭 。
思考题:
舵机是一种角度调节的执行器,常见的舵机可调节 角度为0°到180°,可以用来模拟系统要输出的开锁动作,尝试使用雪糕棒或纸板来模拟这些东西的旋转(例如下图)。
附录:
模拟舵机从关到开的程序示例
12-3 模拟实现刷卡开锁功能学习目标
了解使用列表储存和查找门禁卡数据的方法。
了解实现刷卡开锁的流程的整个路径。
实操目标
将电子标签编码作为用户身份数据储存在列表中,当实验盒读取到有权限的电子标签编码时控制舵机执行开锁动作。
硬件清单
实验盒x1
USB线x1
舵机(含舵盘)x1
RFID标签卡 x2
软件使用:Mind+编程软件
下载地址:https://www.mindplus.cc
活动过程
本次活动的程序需要先将合法的标签存储在列表中,在读取到电子标签编码后判断是否合法,即标签号是否在列表中,如果合法则控制舵机执行开锁动作。
1. 硬件连线
长按ON/OFF按钮启动实验盒,使用USB连接线将实验盒连接到计算机。
将舵机3P线接到P21引脚,舵机可按上舵机盘便于观察。
* 硬件连接示意图同12-2
2. 准备软件
按照下图步骤,设置Mind+软件编程方式为Python代码编程,并完成实验盒连接。
3. 编写程序
刷卡开锁系统分为输入、计算、输出三部分,输入模块用于RFID模块读取电子标签编号,计算模块用于主控板判断编号是否在列表中,输出模块用于控制舵机模拟打开门锁。
具体的工作流程如下图所示:
程序编写需要按照初始化,在列表中储存电子标签编码,读取编码并判断标签编码存在于列表中则打开门锁。
核心程序如下图所示:
注意:可直接将第三单元第十二课资源文件夹中对应的程序文件拖入“项目中的文件”使用。
4. 运行程序
点击界面右上方的运行按钮,运行程序。
运行成功后我们用不同编码的标签卡靠近RFID模块,观察舵机的反应。
5. 测试及活动记录
接下来,同学们修改程序加入自己的电子标签编码,根据实践操作并将过程记在下面表中。
[实践操作]填写实践记录表:
(1) 我将列表部分代码改写成:
sn_list = [ ]
(2) 将不同标签卡靠近识别模块,观察舵反应,并将结果填入下表中。
6. 拓展活动
在实际生活中,需要刷卡的门禁通常会在识别到合法的卡片后会显示用户相关的信息,可以通过修改本活动的程序来增加显示卡片主人的功能。通过字典一一对应的特点,可以将卡片号码和卡片主人联系起来,实验盒读到RFID卡片编号后,查询字典是否有对应的键来判断是否开锁,如果开锁的话将该键对应的值(用户姓名)显示在屏幕上面。
从资源文件夹中找到拓展活动的程序文件拖入“项目中的文件”并打开。
修改后的程序如下:
注意:代码中使用 sn != "no card!" 是因为:RFID模块如果没有读取到标签卡则返回的值是字符"no card!",当读取到的值不是"no card!"时就说明RFID模块读取到了标签,又由于标签编号不在字典中(如果在字典中的话就应该执行前面开关锁的程序)所以可以判断为读到了不符合字典中存储的键值的编号。
文章转载自 公众号 蘑菇云创造,扫描二维码关注后续更新
页:
[1]