丹城中学灭火机器人共享方案(九).docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
丹城中学灭火机器人共享方案(九) 浙江省宁波市象山县丹城中学 顾熙杰 摘要:机器人灭火是中小学机器人比赛的常规项目,怎样提高机器人灭火的速度和稳定性是我们需要重点解决的问题。丹城中学机器人实验室自05年9月份建立以来,经过10个多月的实验,灭火机器人的研究取得了初步的成果,海龙王11号灭火机器人使用4、3、2、1的搜索顺序,灭火最好成绩分别为2.25秒、5.44秒、8.83秒和10.19秒,稳定成绩一般每个房间要延时半秒左右。虽然这个成绩和国内最高水平的机器人还有一定差距,但灭火回家的成功率超过%99,其中不乏有一些成功的算法,现作些介绍,和兄弟学校的师生共享研究成果,具体描述基于纳英特机器人平台。 关键词: 机器人 灭火 教学机器人行进曲线调制算法 一)基本算法 目前的教学机器人大多数是2轮或4轮驱动,最基本的动作是前进、后退、,基本动作经过合成后可以让机器人走出比较复杂的行进曲线。现在的机器人大多使用图形化编程语言或c语言进行程序设计,本文利用c语言在纳英特机器人平台上介绍一些常用的算法。 驱动电机基本指令是前进、后退,如motor(0,100)表示左电机高速前进, motor(1,-30)表示右电机慢速后退,下面我们介绍如何利用基本指令合成比较复杂的行进曲线。 一)原地左转: Motor(0,-80);//左电机后退 Motor(1,80);//;右电机前进 2个电机的速度差越大,转速越快。 如下面的指令, Motor(0,-30);// 左电机后退 Motor(1,40);//; 右电机前进 是慢速左转。 二)原地右转: Motor(0,100);//左电机前进 Motor(1,-100);//;右电机后退 2个电机的速度差越大,转速越快。 如下面的指令, Motor(0, 30);// 左电机前进 Motor(1,-30);//; 右电机后退 是慢速右转。 三)划左弧 一组微动作指令: Motor(0,-100);//转动分量可调节 Motor(1,100);//; Motor(0, 80);//前进分量可调节 Motor(1,80);//; 前进分量越大,弧线半径越大,转动分量越大,弧线半径越小, 当只有转动分量,没有前进分量时就是原地左转,当前进分量很大,转动量很小时就基本上是走直。机器人的微动作是左转一点然后前进一点,从人的感觉上就是转了个左弧线。 应用举例: 永远转左弧 While(1) { Motor(0,-70);//转动分量可调节 Motor(1,70);//; Motor(0, 40);//前进分量可调节 Motor(1,40);//; } 2)转左弧到传感器看到障碍物 如果机器人前面13号端口接了一个红外避障传感器,返回1表示有障碍, 那么为了实现转左弧一直到传感器看到障碍物, 可以使用下面的算法: While(1) { Motor(0,-70);//转动分量可调节 Motor(1,70);//; Motor(0, 40);//前进分量可调节 Motor(1,40);//; If( digital(13)==1) Break; } 3)转左弧2秒钟 Long st; St=mseconds();//机器人系统时间,单位毫秒。 While(mseconds()-st2000l) { Motor(0,-30);//转动分量可调节 Motor(1,30);//; Motor(0, 80);//前进分量可调节 Motor(1,80);//; } 转右弧算法类似,不再论述。 四)一边后退,一边左转 Motor(0,-100);//后退 Motor(1,-100);//; Motor(0, 80);//转动 Motor(1,-80);//; 应用方法和上面类似 四)一边后退,一边左转 Motor(0,-100);//后退 Motor(1,-100);//; Motor(0, 80);//转动 Motor(1,-80);//; 应用方法和上面类似 五)一边后退,一边右转 Motor(0,-100);//后退 Motor(1,-100);//; Motor(0, - 80);//转动 Motor(1, 80);//; 应用方法和上面类似 六)另一类算法举例 Int m=0; While(1) { Motor(0,100); Motor(1,100): M++; If( m%8==7) { Motor(0, -100); Motor(1,100); } } 机器人前进,在每8个微动作中插入1个左转动作,从而也实现了转左 弧线的功能。 七)实战应用举例 如果使用4-3-2-1的搜索顺序,从4号房间出来一边后退一边右转可以提高退房速度。从3号房间出来一边后退一

文档评论(0)

44488569 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:5101121231000003

1亿VIP精品文档

相关文档