咨询热线:

187 - 6397 - 2757

当前位置: 首页 > 新闻列表 > 编程竞赛题库

无人机编程:Scratch全国编程大赛作品“垃圾分类”下!~济南无人机编程~少儿无人机编程

    Scratch全国少儿编程竞赛

    获奖作品解析 - 《垃圾分类》

    本篇文章介绍的作品是全国青少年创意编程与智能设计大赛创意编程比赛一等奖获得者苏子麟同学的最新参赛作品。

无人机编程:Scratch全国编程大赛作品“垃圾分类”下!~济南无人机编程~少儿无人机编程(图1)

    作品说明

    这个作品的目的是普及垃圾分类。使用游戏的方式,让大家更熟悉垃圾应该如何分类。游戏的目标就是正确识别垃圾类别,用正确的垃圾桶去打击更多的垃圾。

    正文

    在上篇文章的最后,当垃圾桶和标志完成了各自的动画之后,就会广播开始游戏。当然同学们如果觉得看动画太无聊了,也可以点击skip按钮,它的意思是跳过动画,立即开始游戏。

    skip按钮的代码:

无人机编程:Scratch全国编程大赛作品“垃圾分类”下!~济南无人机编程~少儿无人机编程(图2)

    开始游戏

    广播开始游戏之后,就正式的进入游戏的操作环节了。

    老师先来说一说游戏的玩法:屏幕中不停的会有各种的垃圾出现,并且来回的移动,操作者要点击不同的垃圾桶发射子弹射击垃圾,每个垃圾都有自己的血量,如果垃圾桶与射击垃圾相匹配,垃圾就会减血消失;如果垃圾桶与射击垃圾不匹配,垃圾的血量会上升。

    接收开始游戏广播的角色一共有九个:四个垃圾桶、四个子弹发射器和一个背景。

    垃圾桶接收广播的代码非常简单:

无人机编程:Scratch全国编程大赛作品“垃圾分类”下!~济南无人机编程~少儿无人机编程(图3)

    当我们用鼠标点击某个垃圾桶后,会广播备发绿(蓝/灰/红),意思是准备发射绿色子弹。

无人机编程:Scratch全国编程大赛作品“垃圾分类”下!~济南无人机编程~少儿无人机编程(图4)

    然后呢,当然就是接收了,子弹发射器接收了备发的广播后会将发射武器类型这个变量设置为子弹发射器对应的值。

    绿色子弹发射器对应的发射武器类型为1,蓝色对应为2,灰色对应为3,红色对应为4。

无人机编程:Scratch全国编程大赛作品“垃圾分类”下!~济南无人机编程~少儿无人机编程(图5)

    为了让我们射击时可以瞄准,子弹发射器还带有一个十字瞄准器:

无人机编程:Scratch全国编程大赛作品“垃圾分类”下!~济南无人机编程~少儿无人机编程(图6)

    它也会接收备发广播,然后改变不同的造型:

无人机编程:Scratch全国编程大赛作品“垃圾分类”下!~济南无人机编程~少儿无人机编程(图7)

    这样,不同颜色的垃圾桶准备发射不同颜色子弹的代码就写好了。

    接下来,在子弹发射器的接收开始游戏的代码中,会不停的判断变量发射武器类型是否被设置了值,比如绿色子弹发射器的代码:

无人机编程:Scratch全国编程大赛作品“垃圾分类”下!~济南无人机编程~少儿无人机编程(图8)

    上面的代码说明,当我们点击了绿色的垃圾桶,就会改变发射武器类型这个变量,然后判断这个变量的值,绿色的子弹发射器就会显示。

    同学们有没有发现,发射武器类型这个变量其实是一个桥梁的作用,桥的一边呢是垃圾桶,一边是子弹发射器,它将这两个角色的代码连接了起来,因为在Scratch中没有是否点击垃圾桶这个侦测语句,所以通过发射武器类型这个中间变量模拟出是否点击垃圾桶的判断语句,这样才能实现点击垃圾桶出现对应发射器的效果。

    上面的逻辑有点点难,同学们要看着代码仔细理解,这种变量的使用方式非常有用和常见,大家一定要掌握哦!

    这时候的效果:

无人机编程:Scratch全国编程大赛作品“垃圾分类”下!~济南无人机编程~少儿无人机编程(图9)

    背景

    接下来,我们要在屏幕上产生各种各样的垃圾,然后再消灭它们。产生垃圾的代码写在背景里面,就是它:

无人机编程:Scratch全国编程大赛作品“垃圾分类”下!~济南无人机编程~少儿无人机编程(图10)

    那为什么要写在背景里面呢?同学们想一想,产生垃圾是不是不仅仅产生一种,有餐余垃圾、回收垃圾、有害垃圾等等,无论把代码写在哪种垃圾角色里都不太合适。因为冻老师建议大家,在一个角色里不要写有关其它角色的代码,那就只能把生成垃圾的代码写在背景里了。这种思路在Python等代码编程中叫做类的封装或者面向对象的写法,同学们现在只需要知道有这个概念就可以了,不需要深入理解。

无人机编程:Scratch全国编程大赛作品“垃圾分类”下!~济南无人机编程~少儿无人机编程(图11)

    上面呢就是不断产生垃圾的代码,它的作用是在不同的概率下产生不同的垃圾,在重复执行语句中,一种出现的概率嵌套在另一种出现概率的否则语句部分,第一个概率是在数字1到4之间随机取一个数,如果随机数是1,则出现厨余垃圾,否则在数字1到3之间随机取一个数,如果随机数是1,则出现其他垃圾,否则在1和2之间随机取一个数,如果随机数是1,则出现可回收垃圾。如果上面的概率都不满足,则最终出现有害垃圾。

    代码中还用到了两个变量:子弹存在和垃圾存在,它们的作用是让舞台区中一次只能出现一个子弹和垃圾。

无人机编程:Scratch全国编程大赛作品“垃圾分类”下!~济南无人机编程~少儿无人机编程(图12)

    自制积木

    好了,现在实现子弹与垃圾的代码我们就写好了,最后,就剩下用子弹击中并消灭垃圾的功能了,写完这部分代码,垃圾分类的这个小游戏就完成了,那就让我们赶紧继续吧。

    在接下来的内容中,老师又要教同学们一个新的编程概念,叫做函数,也叫做方法。

    那什么是函数呢?函数其实就是Scratch中的自制积木,函数中通常都会带有参数,参数就是Scratch自制积木中的输入项,函数名称就是积木名称:

无人机编程:Scratch全国编程大赛作品“垃圾分类”下!~济南无人机编程~少儿无人机编程(图13)

    函数(自制积木)的作用就是将多个具有相同功能逻辑的代码块提炼出来写成一个,通过传递不同的参数(输入项)实现个性化的功能。

    比如说,这里四个垃圾桶发射出子弹击中垃圾时,要么是加血要么是减血,都是操作垃圾血量的过程,只是一个是正数一个是负数,本来我们要在四个判断子弹是否击中垃圾的语句中分别写加血减血代码,但这样太麻烦了,于是,我们就可以将这部分的代码提炼出来,写成一个,通过传递一个参数(输入项)来区分到底是加血还是减血。

    函数(自制积木)代码写出来是这样的:

无人机编程:Scratch全国编程大赛作品“垃圾分类”下!~济南无人机编程~少儿无人机编程(图14)

    这里定义了一个名为子弹碰撞的自制积木,它带有一个名叫结果的参数(输入项)。这个子弹碰撞的自制积木的作用就是判断结果这个输入项是否大于0,如果大于0就减血,如果小于0就加血。

    函数(自制积木)定义好了,下面就要使用这个自制积木,调用的代码是这样的:

无人机编程:Scratch全国编程大赛作品“垃圾分类”下!~济南无人机编程~少儿无人机编程(图15)

    是不是非常简单,每个判断语句里面只需要写一行子弹碰撞的语句就可以了,减血直接就传递武器的变量值,加血呢给武器乘以-1变为负数再传递到自制积木中就可以了。

    使用自制积木的优点有很多,它可以帮助我们简化代码量,而且后期的维护会变的非常方便,比如我们想让所有的垃圾被子弹击中减血的同时再切换一个造型,那么我们直接在自制的积木中添加一个下一个造型语句就可以了:

无人机编程:Scratch全国编程大赛作品“垃圾分类”下!~济南无人机编程~少儿无人机编程(图16)

    如果不使用自制积木的话,我们就需要在每一个垃圾的每一个判断语句中都写一次下一个造型语句,那真是太麻烦了!

    完成

    好了,到这里,《垃圾分类》的代码解析我们就学习完了,由于游戏的源代码非常多,老师在两篇文章中不可能全部都涉及到,所以剩下的代码还要同学们下载后自己阅读理解!

    同学们有没有感受到这篇文章的内容要比上篇文章要难,上篇文章的内容如果算Scratch入门的话,这篇文章一下子就到Scratch进阶了,老师又是讲类封装又是讲函数的,一个脑袋两个大,但是同学们千万不要心急哦,结合源代码反复阅读多练习,搞不懂也没关系,毕竟这是竞赛一等奖选手的作品哦,只要跟着老师一个作品一个作品学习,相信慢慢的你会发现那些搞不懂的问题都不是事儿了!加油哦!

山东机器人编程:家长要了解英国的少儿编程教育!~济南机器人编程~机器人编程(图6)

    速云少儿编程致力于 4 - 18 岁,山东首家少儿无人机编程教育机构,速云网络发软件工程师授课少儿编程教给孩子们不光要学习编程,还要结合编程知识给我们无人机写程序,实现我们无人机的自动启飞、人脸识别、智能跟随,包括更加高级的编程玩法,就是无人机编舞。可能家长想了!四岁孩子能学习无人机编程吗?那我们看个四岁的小同学吧,你自己看看能不能学习吧!

我们来看一看四岁小朋友的学习视频吧!

    家长担心孩子们真的能听懂课程吗?在每节课即将结束的时候我们都会进行课程汇报展示,来看一下小童鞋的汇报成果吧!

    这个时候家长可能说了,我们四岁的孩子,年龄辣么小,又不认字,那该如何学习呢?

    其实四岁、五岁的孩子不认字怎么学习?只要孩子识别颜色就可以学习。通过颜色识别具体编程积木,比如:蓝色是运动紫色是外观黄色是事件等等,通过颜色识别文字,根据颜色先实现出程序做出卡通的效果,以激发孩子兴趣,使孩子产生兴趣后开始具体学习每个积木的作用,再学习积木上面的文字。如下图:

家长关心孩子从小学习编程的6个问题都在这里了,你还在犹豫吗(图1)

    这个时候你还认为编程难吗?其实针对4岁起,就已经可以学习编程了。通过搭积木的方式让孩子学习编程。

    当然,比如我们下面的无人机编程视频吧!

    无人机能六架一起起飞?没错!那他又和数学有什么关系呢?

    小云说啦!这是根据我们数学中的坐标轴的 x轴 y轴 初始化无人机位置,无人机与无人机之间的距离、架数的多少,全部需要通过精密的计算,否则无法编排出理想的造型

    现在作为家长的你!还在纠结无人机编程是否对孩子有帮助吗?

无人机编程能做什么?人脸识别?智能跟随?自动飞行?还有吗?

答案:有!那就是"无人机编舞"!不知道无人机如何编舞?快看下面我们速云小童鞋的无人机编舞吧!!


    无人机编程都学习哪些内容呢?

       让无人机与编程结合?

没错!就是要让孩子“动手”+“编程”实现无人机起飞。

重点培养孩子逻辑思维能力与动手操作能力,让孩子在编写无人机程序的时,无形的锻炼孩子的逻辑思维能力和前沿科技的运用能力,在飞行学习中,孩子们需了解飞机的机械结构,练习手眼协同能力,甚至自己组装飞行器;在编程中,无人机可以在三维空间中,用摄像头完成巡线、人脸识别等人工智能任务。

例如:人脸识别,智能跟随,红外线定稿,光流定位、无人机编舞等。


无人机编程(图1)



当你的孩子还在学习机器人编程时,别人家的孩子却已经学习起了“无人机编程”(图7)

看我们小童鞋们上课视频吧

    坦克编程都学习哪些内容呢?

    动手组装”+“编写程序”

    通过编程将抽象理论与实践操作合二为一,让孩子重新理解知识,体验人工智能,培养独立思考的习惯和动手解决问题的能力。

    课程涉及机器人拼装、力学等数理知识,运用六类人工智能模块,编写专属的自动驾驶算法程序,让孩子更加深入理解人工智能技术。

    例如:人脸识别、智能跟随等前沿技术。


当你的孩子还在学习机器人编程时,别人家的孩子却已经学习起了“无人机编程”(图8)


当你的孩子还在学习机器人编程时,别人家的孩子却已经学习起了“无人机编程”(图9)

在线客服
热线电话

微信公众账号

在线购课

微信客服