张锐
人工智能课程不妨以学科融合为切入点,进行一场AI编程与学科融合课程的探究活动。本节课就是基于AIcode图形化编程软件与AISTEAM硬件,以“孔融让梨”为主题,结合数学和语文知识,设置一定的场景,引导学生进行场景化学习,在发现问题、探究问题、提出假设、实践验证等环节中学习与运用数学、语文和编程知识,训练学生的编程思维,提升人工智能综合素养,提高创新实践能力。
教学实施
情景导入:孔融让梨
教师讲述孔融让梨的故事。在东汉的时候,有一个名叫孔融的孩子,他有5个哥哥和1个弟弟。在孔融4岁那年,父亲的一位学生前来家中看望老师和师母,还带来了一篮子梨。父亲发话让孔融先拿着吃,孔融没有挑大的,却拿了一个最小的梨。父亲看见孔融的行为,心里很高兴,却故意问孔融:“篮子里那么多梨,又让你先拿,你怎么不拿大的?”孔融回答道:“我年纪小,应该拿最小的,大的要留给哥哥们吃。”父亲接着问:“你的弟弟比你小,照你这么说,他应该拿最小。”孔融摇摇头说:“我是哥哥,我应该把大的留给弟弟吃。”
讲完故事后,教师让学生讨论孔融让梨这个故事给我们什么启发,故事里蕴含了什么数学问题,并讨论一个数字的多种加法算式,例如,7有几种分法?
设计意图:运用成语故事引入,让学生感受谦让的良好品德,同时引出数学问题——同一个数为和的不同加法算式有几种?加强学生发散思维的能力,引出编程场景——摘梨。
项目搭建
本课的场景化是“摘梨”,项目是搭建全向移动小车,并设计路线以便“摘”到更多的梨。所需材料为:主控器(运行程序)1个、电池(供电)1个、拓展电机(执行器)4个、拓展模块(连接主控与电机)1个、麦克纳姆轮(全向移动)4个。
搭建全向移动小车的核心部件是麦克纳姆轮。这种全方位移动方式是基于有许多位于机轮周边轮轴的中心轮的原理,这些成角度的周边轮轴把一部分机轮转向力转化为机轮法向力。麦克纳姆轮使用不同的搭建方法需要不同的受力计算,这里为了适配软件算法,对麦克纳姆轮的安装方向作了统一规定。
将4个拓展电机以就近原则接在拓展模块上,将拓展模块接入主控,主控连接电池,将麦克纳姆轮按照规定方向接在拓展电机上。
设计意图:组织学生在组装硬件的同时,理解每一部分在项目实现过程中所发挥的作用,从而在接下来的案例编程中更加合理地使用这些硬件。
角度设置
组装完机器之后,我们需要了解如何使小车进行全向移动。虽然使用了4个电机,但是我们可以把它们当成一个整体进行控制。麦克纳姆轮的控制模块有3个参数:速度、时间、角度。速度范围是0〜100,正向越来越快,反向加上“-”。时间指的是机器运行到停止的时间。这两项比较好理解,我们需要了解的重点是角度设置。全向指的是0〜360°,可以通过图2了解麦克纳姆轮的角度设置规则(注:这里的移动方式都是平移)。
可以通过简单举例协助记忆,把角度图想象成方位图,太阳东升西落,东的位置0就像太阳,由东到西依次增加角度,反向则是把同一条线的两端角度对换。
解决角度设置问题,我们只需要在AIcode图形化编程软件中通过模块对机器进行控制就可以了。例如,图3所示模块的运行情况是以50的速度向前进,1秒钟后停止。
设计意图:通过了解运动模块的角度设置规则,加深对编程模块的理解,为场景式项目编程作铺垫。
场景式项目
场景式项目可以在同一有趣场景设置下,通过改变设置或者有依次递进的多种不同难度。
教师进行场景项目讲解
果园摘摘摘:不同数量的梨的卡片被随机安排在场地中組成地图。机器轮子覆盖的卡片上梨的数量为每轮的得分,学生可运用编程模块设计机器路线,尽可能获得更高的分数。可以设置竞争机制激发学生的竞争意识,也可设置团队分组进行小组对决。
地图示例(图4)
教师与学生分享路线(图5)
●如何获得全部得分?
●如何设置角度?
学生依据地图自行设计路线
提升难度
加入动物选项,动物是减分项,压到1只动物减2分。你会怎么设计地图?怎么设计最优路线呢?你还有什么可以提升难度的想法?
设计意图:通过难度循序渐进的案例,让学生逐步掌握全向运动模块的使用。场景式教学主要提供场景和知识点,给予学生最大程度的自由进行编程设计,不设置标准答案,每个学生都可以自由编程。教师主要起引导作用,引导学生探索问题的多种解法,引导学生进行深入地思考。通过让学生计算得分练习数学计算,用一种较为有趣的方式将数学与编程结合起来。
拓展延伸
在前面的环节中,学生会获得不同的积分。在这个环节可再设置一个加分项,请他们通过依次说出带数字的四字词语获得加分。
设计意图:通过前面的项目挑战,学生练习了数学计算与编程,获得了不同的积分。但是,有的学生比较擅长数学,积分就会比较高。通过拓展环节,可鼓励学生综合发展,也能更好地实践学科融合。
项目展示
教师挑选部分学生的作品进行展示与评价。作品的挑选与评价可以参考以下几方面。
●项目要求的完成度:是否实现了项目描述的基本功能?
●个人创新程度:加入了哪些具有特色的变化?
●是否反映了编程过程中学生普遍存在的问题?
设计意图:让学生对作品进行展示与讲解,分享自己项目的优点与不足,并在教师评价与组内讨论中寻找解决方式与灵感。对自身进行反思,汲取经验,进一步提升自我。同时,也在分享之中获得认同与快乐。