13348| 16
|
[公告] 【新课标】信息科技跨学科案例-五年级 无人自助收银系统 |
本帖最后由 EVE 于 2023-4-7 18:34 编辑 无人自助收银系统 项目来源为满足新课标中五年级“身边的算法”内容要求,体现培养学生初步运用算法思维的习惯,形成分析简单算法的能力,设计了项目“无人自助收银系统”。 项目介绍 在“无人自助收银系统”项目中, 学生将使用摄像头识别商品,体验自助收银的过程。 通过按件扫描商品,帮助学生理解算法中的顺序结构;通过判断商品是否打折,理解分支结构;通过手动调整购买数量,理解循环结构。 学生还能设置程序中的参数,体验不同算法解决同一问题时在时间效率上的差别,加深对算法的理解。 项目中的主控器为行空板,连接摄像头识别二维码,实现商品识别,通过行空板屏幕,实现数据显示和交互流程。 “无人自助收银系统”功能展示 行空板界面展示 视频 项目知识点 贴合新课标中五年级的内容要求,“无人自助收银系统”核心教学以下知识点: 1. 理解将自助收银的算法分解为开始结算、扫描商品、显示信息、调整数量、确认支付等操作步骤。 2. 了解收银算法的顺序结构为按件扫描商品,分支结构为判断商品是否打折,循环结构为根据调整的购买数量计算总价。 3. 体验不同算法解决同一问题时在时间效率上的差别。例如,设计两种不同的收银算法,第一种只能扫码结算,第二种除了扫码结算,还能手动修改购买数量。当我们结算相同的商品时,按照第一种算法,程序执行过程是先判断是否扫码,再判断扫码结果,再获取商品价格,最后更新总价;按照第二种算法,程序执行过程是先判断是否调整数量,然后更新总价。对比两种算法,第二种算法的时间效率更高。 项目原理 在设计“无人自助收银系统”算法时,可分解出如下操作步骤。 在“无人自助收银系统”算法中,可体现出顺序、分支和循环三种基本控制结构。如下图,先扫描商品,再显示信息,最后完成支付的过程体现了顺序结构。 判断商品是否为折扣商品,得出不同价格的过程体现了分支结构。 在扫描完一件商品后,判断是否支付,如果没有支付则继续扫描的过程体现了循环结构。 对比下图两种不同的收银算法。 假如需购买 3 瓶可乐,按照第一种算法,每瓶可乐都需要经过扫描商品、显示名称、获取价格、更新总价的过程;但是按照第二种算法,只有第 1 瓶可乐需要经历扫码结算的过程,第 2 瓶和第 3 瓶可乐只需要调整数量即可。 如下两幅流程图中红框框出的部分,当顾客需要购买多件同一种商品时:第二种算法需要执行的步骤更少,所以程序效率更高。 第一种:扫码结算 第二种:扫码结算&调整数量 硬件介绍 在“无人自助收银系统”中,使用主控器结合传感器,实现项目功能。 主控器为行空板(点击购买)。 传感器为摄像头(点击购买)。 各硬件功能介绍如下表。 硬件接线 “无人自助收银系统”的硬件接线原理图和接线实物图如下图。 “无人自助收银系统”接线原理图 “无人自助收银系统”接线实物图 流程图 在“无人自助收银系统”中,行空板的界面与系统控制流程图如下图所示。 行空板界面图 “无人自助收银系统”流程图 重点程序截图 “无人自助收银系统”重点程序截图如下。 “摄像头扫描二维码”程序 “判断商品是否打折”程序 外观结构设计 在“无人自助收银系统”中,为了便于课堂教学和项目展示,可利用激光激光切割技术设计外观结构。 示例结构设计和安装完成图如下图。 “无人自助收银系统”结构设计图 “无人自助收银系统”安装完成图 附件下载 五年级- 程序.zip |
本帖最后由 Forgotten 于 2023-3-28 11:38 编辑 ModuleNotFoundError: No module named 'pyzbar',这个报错是说找不到pyzbar库,需要安装pybzar库。 解决方法: 方法1:可以给行空板刷0.3.5及以上固件(内置了这个库,比较花时间) 方法2:手动离线安装库 (推荐,简单快捷) 方法3:联网安装库 --------------------------------------------------------------------------- 方法2说明: 1、下载这个附件,解压得到mind+的.mp项目文件,用mind+打开。 二维码识别库安装2.zip 2、切换到代码模式,打开安装库文件夹,双击打开“安装库.py”,然后连接行空板,运行,等待安装完成即可 方法3说明: 1、先让行空板联网:https://wiki.unihiker.com/webmenu#target_2 2、然后安装libzbar0库: 在Mind+里面连接行空板,然后在终端复制下面这段指令,到终端ctrl+V粘贴,然后回车,等待安装完成
注:如果提示:暂时不能解析域名“httpredir.debian.org",可以尝试下面这个指令,使用国内清华源:
3、安装pyzbar库。复制下面的代码到终端回车运行,等待安装完成,再运行代码就不会提示库不存在了。 注:WARNING警告不用管。
|
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed