万奇机器人-神奇的事件积木

万奇机器人-神奇的事件积木

一、学习目标

  1. 复习运动类积木,学过的事件积木;

  2. 学习新的事件类积木,并使用条件选择来替代事件积木。

  3. 完成前行任务项目代码。

二、项目分析

  

万奇机器人从A1的位置出发,向箭头方向移动,直到距离蓝色障碍物10厘米处停止,在移动过程中如果碰到黄色会唱歌。

三、项目实现代码

  1. 知识储备

在任务开始前我们首先要看一事件类积木,首先要理解什么是事件?事件其实就是一个事情的开始,机器人接收这个事情发生便开始相关任务。

在我们万奇上会有一些设备去收集信息。

万奇机器人的功能还可以看到前面有没有障碍物,还可以计算出与障碍物的距离。

程序之间同样是可以配合使用的,例如:我们需要显示与障碍物的距离。

 

  2. 声音事件

首先我们来实现一下声音的事件,如果我们发出声音,万奇就往前走10厘米;

这个时候就会发现我们只要发出声音,万奇就会移动。

现在如果说我们希望,发出声音就可以向前移动,不发出声音就转。这个时候通过事件积木就能满足了。

我们可以使用条件判断来完成。

这里我们实现的时候会发现,万奇只动了一次,有的时候是转弯,有的是前进,这是问什么呢?

其实在这里“如果...那么...”在这里只做了一次判断,如果想要一直判断我们就需要通过重复执行来完成。

 

以上我们通过来实现了将完善了,这里我们通过修改会发现其实事件也是一个判断。

  3. 任务完成

当我们发出声音万奇机器人从A1的位置出发,向箭头方向移动,直到距离蓝色障碍物10厘米处停止,在移动过程中如果碰到黄色会唱歌。

首先我们让万奇接收声音后移动;

这里只能让万奇移动一次,如何一直移动呢,前面我们学过重复执行。可以使用它来完成。

但是这里的前进是有条件的,当与障碍物的距离小于10厘米的时候是不能走的,相当于说这里面不小于就应该往前走的,所以这里分为了两种情况。

如果(与障碍物的距离 < 10)那么 停止移动,不满足就是向前移动。

显示与障碍物的距离

但是在这里并不能完成对万奇的停止,万奇还是会移动,因为在这里只是停止了一次的移动,重复执行会进入到下一次循环中,这个时候还是会动的。

那这个时候如何解决?如果我们让整个程序停止了,是不是就不会进入到循环中了

接下来我们就完成碰到黄色唱歌的效果啦。这里还是用到传感器与判断。

这里我们会发现没有使用而是用,因为在这里我们只是让识别黄色后做出的反应,没有识别也就不做反应就可以了,所以没有两种情况。

 

四、项目完整代码

五、作业实践

  1.  完成任务代码复习;

  2. 熟练使用“如果...那么...”“如果...那么...否则...”“重复执行”积木。

posted @ 2023-09-24 16:27  WangZhaowei  阅读(222)  评论(0编辑  收藏  举报