万奇机器人-神奇的事件积木
万奇机器人-神奇的事件积木
一、学习目标
1. 复习运动类积木,学过的事件积木;
2. 学习新的事件类积木,并使用条件选择来替代事件积木。
3. 完成前行任务项目代码。
二、项目分析
万奇机器人从A1的位置出发,向箭头方向移动,直到距离蓝色障碍物10厘米处停止,在移动过程中如果碰到黄色会唱歌。
三、项目实现代码
1. 知识储备
在任务开始前我们首先要看一事件类积木,首先要理解什么是事件?事件其实就是一个事情的开始,机器人接收这个事情发生便开始相关任务。
在我们万奇上会有一些设备去收集信息。
万奇机器人的功能还可以看到前面有没有障碍物,还可以计算出与障碍物的距离。
程序之间同样是可以配合使用的,例如:我们需要显示与障碍物的距离。
2. 声音事件
首先我们来实现一下声音的事件,如果我们发出声音,万奇就往前走10厘米;
这个时候就会发现我们只要发出声音,万奇就会移动。
现在如果说我们希望,发出声音就可以向前移动,不发出声音就转。这个时候通过事件积木就能满足了。
我们可以使用条件判断与来完成。
这里我们实现的时候会发现,万奇只动了一次,有的时候是转弯,有的是前进,这是问什么呢?
其实在这里“如果...那么...”在这里只做了一次判断,如果想要一直判断我们就需要通过重复执行来完成。
以上我们通过与来实现了将完善了,这里我们通过修改会发现其实事件也是一个判断。
3. 任务完成
当我们发出声音万奇机器人从A1的位置出发,向箭头方向移动,直到距离蓝色障碍物10厘米处停止,在移动过程中如果碰到黄色会唱歌。
首先我们让万奇接收声音后移动;
这里只能让万奇移动一次,如何一直移动呢,前面我们学过重复执行。可以使用它来完成。
但是这里的前进是有条件的,当与障碍物的距离小于10厘米的时候是不能走的,相当于说这里面不小于就应该往前走的,所以这里分为了两种情况。
如果(与障碍物的距离 < 10)那么 停止移动,不满足就是向前移动。
显示与障碍物的距离
但是在这里并不能完成对万奇的停止,万奇还是会移动,因为在这里只是停止了一次的移动,重复执行会进入到下一次循环中,这个时候还是会动的。
那这个时候如何解决?如果我们让整个程序停止了,是不是就不会进入到循环中了
接下来我们就完成碰到黄色唱歌的效果啦。这里还是用到传感器与判断。
这里我们会发现没有使用而是用,因为在这里我们只是让识别黄色后做出的反应,没有识别也就不做反应就可以了,所以没有两种情况。
四、项目完整代码
五、作业实践
1. 完成任务代码复习;
2. 熟练使用“如果...那么...”“如果...那么...否则...”“重复执行”积木。