川教版信息技术九下第13课机器人灭火—迷宫灭火教案

川教版信息技术九下第13课机器人灭火—迷宫灭火教案

ID:16442729

大小:319.50 KB

页数:24页

时间:2018-08-09

川教版信息技术九下第13课机器人灭火—迷宫灭火教案_第1页
川教版信息技术九下第13课机器人灭火—迷宫灭火教案_第2页
川教版信息技术九下第13课机器人灭火—迷宫灭火教案_第3页
川教版信息技术九下第13课机器人灭火—迷宫灭火教案_第4页
川教版信息技术九下第13课机器人灭火—迷宫灭火教案_第5页
资源描述:

《川教版信息技术九下第13课机器人灭火—迷宫灭火教案》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、灭火机器人迷宫策略  我们丹城中学机器人实验室经过大量实验,结合网络上搜索到的资料,经过归纳,总结出下列最基本的法则,下列原则和红外传感器的数量无关,和使用的教学机器人类型(红外传感器类型)无关,是抽象层次的描述,至于具体实现,请参考下面的代码或者各共享方案。一)红外传感器实现左右手法则的最基本原理1)迷宫法则      看到墙壁离开墙壁,看不到墙壁,接近墙壁.2)迷宫函数构造法则迷宫函数语法结构中必须包含有前进、左转、右转三个分量,或者可以分解出上述三个分量。二)红外传感器实现左右手法则的一般过程迷宫法则看似简单,实则博大精深,上面讲述的最基本原理非常抽象,就象牛顿第一定理f

2、=ma一样,需要结合实际例子才能理解,我们把他分散在第6、9、11、13等章节进行讲解,使迷宫法则逐渐从科学的殿堂走下来,让他成为同学们手中的玩物。上面的“看到墙壁离开墙壁,看不到墙壁,接近墙壁.”是哲学层次的描述,也是最高层次的描述,抽象性最高,是一切迷宫算法的理论基础,哲学层次的描述和红外传感器的数量无关。从哲学层次出发,我们可以找到几种算法层次的描述,哲学层次和算法层次都和使用的机器人种类无关。从算法层次出发,算法进行具体化,我们就要进行代码编程,代码层次和硬件直接有关,也就是不同公司的产品代码可能会有差别。编码后,我们还要到场地上进行实地调试,使机器人真真能走出稳定快速

3、的迷宫线路。构造迷宫算法的理论依据越原始,算法变化的空间越大,设计难度也大,但出现又快又稳的算法的可能性也大,下面内容,以及第9,11,13等章节,我们将从各个层次上来论述迷宫算法的构建过程。    为了找到火焰,我们要让机器人做迷宫搜索,不管使用什么策略,左手法则和右手法则都是迷宫搜索的基础,我们至少要实现其中一种行走方法。在这里作者向大家推荐的方案是机器人左右手法则都会走,这样机器人灭火和回家的效率就比较高,在这里中间朝前的红外传感器是左右手法则共用的传感器。本章我们只是简单介绍一下迷宫算法,关于迷宫法则的深入讨论,作者把它放在<第九章>和<第十三章>这两章再作论述。  6

4、.1    左手法则所谓左手法则就是机器人把左边的墙壁看成是参照物,机器人贴迷宫左侧的墙壁实现行走。要实现左手法则需要用到红外避障传感器,最常见的是用两个或三个传感器的实现方法,两个传感器来实现左手法则调试最简单。三个传感器的实现方法调试比较难,三个以上传感器的用法行走速度不一定就快,传感器之间相互干扰很难解决,在这里我们不作介绍。一个传感器的实现方法稳定性低,实战中很少有人使用。 6.1.1 三个传感器实现左手法则的算法三个传感器实现左手法则可以使用两个传感器类似的方法,就是“看到墙壁,往外走,看不到墙壁往里走。”在这里我们给出比较典型的算法,下面的算法调试比较难,调试得不好

5、,机器人容易做出自向矛盾的微动作,表现为停步不前,或者在某处发抖。在这里提供的算法原理是:前面看到右转,左45度看到右转,左边看到前进,什么也没有看到转左弧。图6-1 图6-1是三个传感器走左手常见的安装方法,根据调试经验,左传感器也向前偏转一定角度,这样设计,机器人走迷宫的速度会快一些。前红外传感器观察范围20cm左右,左传感器观察范围20cm左右,左45度传感器观察范围10cm左右,红外的观察范围、角度和下面面的马达参数一样,都需要调节以适应自己的机器人。假设纳英特机器人前面传感器接13口,左45度接12口,左红外接11口。参考代码如下: Voidmigong_left()

6、{      If(digital(13)==1)//前面看到,原地右转             {                    motor(0,40);                    Motor(1,-70);             }      elseIf(digital(12)==1)//左上角45度看到,原地右转             {                    motor(0,40);                    Motor(1,-70);             }      elseIf(digital(11)==1

7、)//左边看到,前进             {                    motor(0,60);                    Motor(1,60);             )      Else//什么也没有看到,转左弧             {                    motor(0,-80);                    Motor(1,80);                    motor(0,80);            

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。